更改日期时间日期与月份名称在word


Change datetime to date with month name in word

我是Stack Overflow的新手。所以,如果我的问题不清楚,请指导我。

I have a datetime such as 2016-10-08 11:02:55. 
I need to convert it into like this 8 OCT 2016. 

有谁知道我怎么才能得到这种格式的?这必须在PHP中完成。

谢谢。

需要使用strtotime()将目标字符串转换为时间,使用date()将时间转换为格式化的日期。strtoupper()将所有字符转换为大写

$x = "2016-10-08 11:02:55";
echo strtoupper(date("j M Y",strtotime($x)));
结果:

8 OCT 2016 
演示工作

PHP的伟大之处在于通常有不止一种方法来获得期望的结果,这个原则在这种情况下也是正确的。您还可以编写以下代码:

<?php
$date = new DateTime('2016-10-08 11:02:55');
echo strtoupper($date->format('j M Y'));

查看实时代码。

该解决方案的优点是,您可以将字符串作为参数传递给初始化新的DateTime对象。您可以使用该对象来指定日期格式。最后,我使用strtouppe()将月份名称全部大写。

平心而论,手册说这个对象的format方法是有限的,如下所示:

此方法不使用区域设置。所有输出均为英文。

PHP为DateTime类提供了另一个方法,可以静态调用该方法来实例化DateTime对象。如果您愿意,您可以向该方法提供时区信息。因此,编写解决方案的另一种方法如下:

<?php
$date = DateTime::createFromFormat('Y-m-d g:i:s', "2016-10-08 11:02:55");
echo strtoupper( $date->format('j M Y') );