我想显示的日期European format (dd/mm/yyyy)
用strtotime
,但它总是返回01/01/1970。
这里是我的代码行:
echo "<p><h6>".date('d/m/Y', strtotime($row['DMT_DATE_DOCUMENT']))."</h6></p>";
在我的数据库,该领域是一个varchar和记录格式化像YYYY.MM.DD
我使用相同的代码行对于被格式化像YYYY-MM-DD(VARCHAR太)另一个领域,它工作正常。
谢谢你的帮助。
由于格式yyyy-mm-dd
的作品,试图取代.
用-
date('d/m/Y', strtotime(str_replace('.', '-', $row['DMT_DATE_DOCUMENT'])));
试着用:
$date = date_parse_from_format("Y.m.d", $row['DMT_DATE_DOCUMENT']);
$time = mktime($date['hour'], $date['minute'], $date['second'], $date['month'], $date['day'], $date['year']);
echo "<p><h6>".date('d/m/Y', $time)."</h6></p>";
(使用date_parse_from_format()
代替strtotime()
要不就:
$date = date_parse_from_format("Y.m.d", $row['DMT_DATE_DOCUMENT']);
echo "<p><h6>{$date['day']}/{$date['month']}/{$date['year']}</h6></p>";
从报价在PHP手册中的strtotime页面 。
在M / d / y或DMY格式日期是由寻找的各种组件之间的分隔符消除歧义:如果分离器是斜线(/),则美国米/ d假定/ Y; 而如果隔板为破折号( - )(。)或一个点,然后假定欧洲DMY格式。
为了避免潜在的不确定性,最好使用ISO 8601(YYYY-MM-DD)日期或DateTime::createFromFormat()
可能时。
所以你的情况应该是两种格式YYYY-MM-DD或DMY
如果要分析你自定义格式然后使用date_create_from_format
例如,
date_create_from_format('Y.m.d',$row['DMT_DATE_DOCUMENT'])