PHP字符串日期返回错误的日期
问题描述:
我的代码:PHP字符串日期返回错误的日期
echo "Strtotime : ";
echo date("Y-m-d",strtotime('9 March, 2015'));
echo "<br> mktime : ";
echo date("Y-m-d",mktime('9 March, 2015'));
echo "<br> Normal : ";
echo date("Y-m-d",'9 March, 2015');
我需要输出2015年3月9日
答
我强烈建议您使用DateTime类此:
$date = DateTime::createFromFormat ("d M, Y", "9 march, 2015");
echo $date->format ("Y-m-d");
如果您检查PHP manual for DateTime,你可以得到一大堆关于如何等真正的好建议以进一步利用这一类。这使得在PHP中使用日期比使用旧功能要容易得多。 ;)
答
您可以使用日期时间与date_create_from_format,如果字符串的结构始终是相同的:
$d = '9 March, 2015';
echo date_create_from_format('d F, Y', $d)->format('Y-m-d');
看到一个运行的例子:如果你想显示日期https://3v4l.org/s8EHi
+0
其工作很好.....谢谢 –
答
- 蒙^ h - 一年就可以申请这个
<?php
echo date('Y-m-d');
?>
答
我想你应该使用这段代码来得到确切的日期格式。
$ orig_date =“22/09/2016”;
$ date = str_replace('/',' - ',$ orig_date);
echo date('Y-m-d',strtotime($ date));
哪里字符串'3月9日,2015'来自 - 你有没有在这个任何控制,还有什么其他格式可能你被接收? – Steve
请尝试查看['mktime()'](http://php.net/manual/en/function.mktime.php)的手册。它与您尝试使用它无关。 – RiggsFolly
另请参见[ 'strtotime()'](http://php.net/manual/en/function.strtotime.php)如果你使用的功能正确,它们将正常工作 – RiggsFolly