【发布时间】:2017-05-17 14:54:19
【问题描述】:
$date = "31/01/2017";
$date = date("Y-m-d", strtotime($date));
对于某些上述代码不起作用并给我结果:$date = 1970-01-01;
当我从数据库中获取日期并以相同的方式转换它的工作时。但是当我想将“d/m/Y”格式转换为“Y-m-d”时不起作用
我可以通过爆炸以其他方式转换日期,但是为什么上面的代码不起作用..??
【问题讨论】:
-
您需要将
m/d/y与/或d-m-y与-一起使用。strtotime()期望这样,因为m/d/y是美国格式,d-m-y年份是许多其他国家/地区。 -
@AbraCadaver 对不起,我没能找到你..
-
您必须使用
01/31/2017或31-01-2017或查看副本上的第二个答案。 -
基本上,当您使用
strtotime时,您需要在these formats that the parser understands 之一中给它一个字符串,而“d/m/Y”不在该列表中。 -
如果您仍然想在重复答案中使用
strtotime而不是date_create_from_format,则可以在使用@987654339 之前将str_replace$date中的/转换为-@.