我有一个从mysql表中获取的日期时间,我想将其显示为字符串。它看起来如下所示,我希望它看起来像2016年7月14日下午5:00。
2016-07-14 17:00:00
我尝试了如下格式,但它没有用。我如何得到它我想要的?
date_format($date, 'g:ia \o\n l jS F Y');
答案 0 :(得分:5)
您只需使用类似$date
之类的内容将strtotime()
转换为时间戳,然后将其作为PHP date()
函数的第二个参数传递。第一个论点是日期的Format
。下面说明了......
<?php
$date = "2016-07-14 17:00:00";
$date = date('g:ia \o\n l jS F Y', strtotime($date));
var_dump($date);
// PRODUCES: '5:00pm on Thursday 14th July 2016' (length=33);
答案 1 :(得分:2)
您可以使用PHP的date_format
,但它需要date object而不是字符串。
date_format(DateTimeInterface $ object,string $ format)
以下是使用程序样式的示例:
$date_string="2016-07-14 17:00:00";
$date_object=date_create($date_string);
echo date_format($date_object, 'g:ia \o\n l jS F Y');
以下是使用面向对象样式的示例:
$date_string="2016-07-14 17:00:00";
$date_object=new Datetime($date_string);
echo $date_object->format('g:ia \o\n l jS F Y');
输出:
2016年7月14日星期四下午5点
答案 2 :(得分:1)
$date=date_create("2016-07-14 17:00:00");
echo date_format($date,'jS F Y \a\t g:ia');
输出:
14th July 2016 at 5:00pm
答案 3 :(得分:1)
使用DateTime
:target()
输出:2016年7月14日下午5:00
答案 4 :(得分:1)
简单:
$mysqlDate = "2016-07-14 17:00:00";
$formatted = date('F dS Y \a\t H:iA', strtotime($mysqlDate));
将显示:2016年7月14日下午5:00
编辑:我忘记添加“at”