将字符串转换为正确的日期格式(joomla格式)


Convert a string to correct date format (joomla format)

我得到了一个裸版joomla(所以只是使用joomla cms和表名的纯php)。文章的发表日期保存为:

2016-04-06 14:38:52

我如何将该字符串转换为类似的内容

6 April 2016

所以忽略时间,只使用正确格式的日期。

使用PHP(没有joomla内置函数)如何做到这一点?

您可以使用php 的datestrtotime功能

$t="2016-04-06 14:38:52";
echo date('j F Y', strtotime($t));

F:-一个月的完整文本表示,如一月或三月

j:-没有前导零的月份的哪一天

Y:-一年的全数字表示,4位

输出

2016年4月6日

您也可以用面向对象的方式来实现:

//create a DateTimeObject
$dateTime = new DateTime($date);
echo $dateTime->format('j F Y'); //output: 6 April 2016

j F Y:解析

j - Day of the month without leading zeros
F - A full textual representation of a month, such as January or March
Y - A full numeric representation of a year, 4 digits

我们也可以使用PHP自带的DateTime类来实现这一点。

$date = "2016-04-05 16:00:00";
$odate = DateTime:createFromFormat('Y-m-d H:i:s', $date);

请注意,我使用createFromFormat方法来初始化DateTime对象。这将防止以错误的方式解释2016-04-05等日期。这个日期也可以是5月4日

现在,输出

// Output
echo $oDate->format('j F Y');

F-一个月的完整文本表示,如一月或三月

j-没有前导零的月份的哪一天

Y-一年的全数字表示,4位