使用 PHP date() 格式化 SQL Server time(7)


Formatting SQL Server time(7) using PHP date()

在我的 SQL Server 数据库中,我有一个时间字段存储为 time(7)。我一直在尝试使用 echo 在 PHP 中打印它,但我不起作用,所以我使用了这段代码

"ReturnDatesAsStrings" =>1

它返回了

08:35:00.0000000

在过去的一个小时里,我一直在尝试使用 date() 函数将其格式化为 08:35am,但没有运气。有什么线索吗?

如果禁用ReturnDatesAsStrings则得到的是一个DateTime对象。显然,一个对象不能用普通的回声打印,但是你有一个合适的日期,你所要做的就是在它上面调用format()方法。当PHP可以为您完成时,使用字符串作为中间格式是一个更大的麻烦。

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

试试这个:

date_format( strtotime($datetime_field_in_db), 'g:i A') );