好吧,有一个数据库使用时间函数来处理事件列表,然后将数据显示为:
echo "<b>Time Frame:";
echo "$time_start"; echo " - "; echo "$time_end";
如果我希望时间是上午11:00,那么显示时间为11:00:00。反正有没有把这个时间显示为标准的“11:00”?并且如果在mysql数据库中输入它作为军事时间(例如13:00)以使其显示在下午1:00?
我尝试了很多东西。请帮忙。
答案 0 :(得分:2)
echo date('G:i',strtotime($time_start)); //date('g:i a',strtotime($time_start));
or
$date = date_create($time_start);
echo date_format($date, 'G:i'); // echo date_format($date, 'g:i a');
or
$date = new DateTime($time_start);
echo $date->format('G:i'); // echo $date->format('g:i a');
答案 1 :(得分:1)
答案 2 :(得分:1)
PHP的内置DateTime类将在这里提供帮助:
$time = new \DateTime("1:00:00");
echo $time->format("H:i");
// Output:
// 1:00
此处有更多信息:http://php.net/manual/en/datetime.format.php
您可以在构造函数(创建对象)和format()
方法(打印/显示对象)中实际定义自己的格式。有关支持的格式的信息,请访问:http://php.net/manual/en/datetime.createfromformat.php
答案 3 :(得分:0)
将此作为您的查询..
$query = mysql_query("SELECT id,title,date_start,date_end,DATE_FORMAT(date_start, '%l:%i') as time_start, DATE_FORMAT(date_end, '%l:%i') as time_end,location,description,image,hyperlink FROM events3 WHERE date_end >= CURDATE() ORDER BY date_start LIMIT 5;");
答案 4 :(得分:0)
为了删除秒数,您可以使用MYSQL或php方法:
MYSQL:
SELECT SUBSTRING(SEC_TO_TIME(seconds), 1, 5);
PHP:
$cleantime=substr($time,0,5)
两者都只会保持数小时和分钟