有效地使用时间戳(objective-C, PHP, SQL)


Efficient use of timestamps (objective-C, PHP, SQL)

我试图找到最有效的方法来管理时间戳在SQL数据库中,我通过PHP通信,并最终在Objective-C和Java中打印数据。

这基本上是一个由两部分组成的问题,但它们是相关的:

1)我知道使用NSDateFormatter相当简单,但相当昂贵。我想知道以用户友好的格式跟踪、解析和打印这些数据的最有效方法,例如"计时器还剩5天"。我是否应该在PHP, objective-C中进行转换,或者根本不使用时间戳,并在数据库中使用正常的"int"?

为了澄清/例子,假设在我的应用程序中,我设置了一个计时器,我想在我的数据库中记录这个时间一周后,
2)我想从SQL->PHP->Objective-C that said "timer" is now complete/over发出警报。

这不是我在实践中要做的,但了解如何最有效地做到这一点,足以让我做我想做的事。非常感谢你的澄清,如果这个主题之前已经涉及过,我很抱歉,但我找不到全面的答案!

将时间戳存储在数据库中;数据库是由计算机读取的,而不是人类;将人类可读的日期/时间字符串转换为计算机用于日期的内部格式通常会带来挑战(只需搜索SO即可找到所有询问为什么某些日期解析不正确的问题);你想要支持Objective-C, Java和PHP…这应该会让你得到一个显而易见的答案!

将时间存储为某种整数类型,表示从某个固定点开始的某个时间单位的数量,例如自1900年1月1日以来的微秒数。选择单位和固定点,看看你的三个目标语言,看看是什么单位& &;他们使用的固定点,选择最合适的,并在需要时转换读/写到DB。

这只是我的观点,当然没有正确的答案。HTH .