有人能帮我做以下事情吗。
我正在使用php和sql查询一个微软访问数据库。我有一个名为"StartTime"的日期/时间字段,设置为"常规日期"格式。
从microft访问GUI中检查字段时,日期显示为"08:45:00"。
我的问题是,当我用php和sql检索这些数据,然后将其显示在中,然后将它写入浏览器时,它显示如下"1899-12-30 09:00:00"(让我们称之为"长日期格式"来表示我要说的内容)。
我试着用"长日期格式"作为第二个参数来处理php日期函数,但我似乎无法让它在浏览器中以"08:45:00"的格式显示。
有人能告诉我我需要做什么吗?
感谢
问题是MS Access将日期存储为带分数的双精度。因此,您需要相应地解析它。
这个数字的全部是1899年12月30日以来的天数。分数部分是一天中的分数。因此,你需要将分数乘以24得到小时,将所得分数乘以60得到分钟,将所得小数乘以60得到秒。
或者,您可以将分数乘以86400(24小时内的秒数),然后使用PHP函数将秒转换为一天中的时间。
查看这篇文章:http://support.microsoft.com/kb/210276
您可以要求Access的数据库引擎只将这些日期/时间值的时间部分作为格式化字符串提供给您:
SELECT Format(StartTime, "hh:nn:ss") AS time_only
FROM YourTable;
这样你就不必转换PHP中的值。。。只要使用它们。