【问题标题】:Formatting SQL Server time(7) using PHP date()使用 PHP date() 格式化 SQL Server 时间(7)
【发布时间】:2012-05-01 03:29:57
【问题描述】:
在我的 SQL Server 数据库中,我有一个存储为 time(7) 的时间字段。我一直在尝试使用 echo 在 PHP 中打印它,但我不会工作,所以我使用了这段代码
"ReturnDatesAsStrings" =>1
它返回了
08:35:00.0000000
在过去的一个小时里,我一直在尝试使用 date() 函数将其格式化为上午 08:35,但没有运气。有什么线索吗?
【问题讨论】:
标签:
php
sql
sql-server
date
time
【解决方案1】:
如果你禁用ReturnDatesAsStrings,你会得到一个DateTime 对象。很明显,一个对象不能用一个简单的回显来打印,但是你有一个正确的日期,你所要做的就是调用它的format() 方法。当 PHP 可以为您完成时,使用字符串作为中间格式是一个更大的麻烦。
【解决方案2】:
echo date('H:ia', strtotime('08:35:00.0000000')); // 08:35am
或者,更好的是,使用DateTime 类:
$date = new DateTime('08:35:00.0000000');
echo $date->format('H:ia'); // 08:35am
【解决方案3】:
试试这个:
date_format( strtotime($datetime_field_in_db), 'g:i A') );