我有一个日期字段,我从WordPress中提取,默认格式为:
16/12/2016
自从我玩PHP以来已经有一段时间,但我记得格式化日期的方式是:stdout
但是当我做的时候
echo date_format($date,"[format syntax]");
如果没有显示日期。
我错过了什么。这改变了吗?
答案 0 :(得分:0)
当创建数据格式表格字符串使用斜杠格式时,它采用mm / dd / yy(yy)格式。因此,在您的代码中,默认情况下不允许使用前16个,您必须指定从字符串创建的格式。
请注意,当您使用带斜线和短划线的格式(例如02-02-2012 or 02/02/2012
)创建新的日期对象时,它必须采用mm/dd/yy(yy)
或mm-dd-yy(yy)
格式(而非英国格式{ {1}})!几个月总是在几年前(美国风格),否则你会得到一个不正确的日期,并可能会出现类似上面的错误(PHP试图解码第13个月时崩溃)。
答案 1 :(得分:0)
由于您的日期不是date_create中可接受的格式,例如mm/dd/yy(yy)
或mm-dd-yy(yy)
使用php DateTime::createFromFormat
函数代替此函数可以检测您
(PHP 5> = 5.3.0,PHP 7) DateTime :: createFromFormat - date_create_from_format - 根据指定的格式解析时间字符串
$date = '16/12/2016';
$show_date = DateTime::createFromFormat('d/m/Y', $date)->format('F d, y');