我在数据库中有这样的时间
[open_time] => 10:00:00
[close_time] => 23:00:00
我希望将其转换为可读形式,如上午10:00至晚上11:00
我试过了:
$open = date("g:s a",$time['open_time']);
$close = date("g:sa",$time['close_time']);
我收到以下错误:
遇到非正确形成的数值
答案 0 :(得分:10)
date
需要一个整数参数,即传统的Unix timestamp。
试试这个:
date('g:s a', strtotime($time['open_time']));
strtotime
尝试将字符串转换为date
所期望的整数Unix时间戳。
答案 1 :(得分:2)
如果它在您的数据库中,请考虑直接在您的请求中使用MySQL DATE_FORMAT() function
答案 2 :(得分:2)
第二个参数需要UNIX时间戳(纪元时间):
http://php.net/manual/en/function.date.php
时间戳
可选的时间戳 参数是整数Unix时间戳 默认为当前本地 没有给出时间戳的时间。在 换句话说,它默认为该值 时间()。
<?php
$t = time();
print_r($t);
print_r(date('g:i a', $t));
?>
给出
1288935001
10:30 pm