PHP使用不同格式创建新的日期时间
下面的代码可以正常工作,直到$dt4创建为英国格式,$dt1可以正常工作为德国格式,$dt2可以正常工作为荷兰格式,$dt3可以正常工作为美国格式,$dt4失败,因为它说它是不正确的格式,所以无法解析它,所以我尝试在创建$dt4之前使用setlocale来en_GB,但是没有帮助,有什么想法吗PHP使用不同格式创建新的日期时间,php,date,datetime,Php,Date,Datetime,下面的代码可以正常工作,直到$dt4创建为英国格式,$dt1可以正常工作为德国格式,$dt2可以正常工作为荷兰格式,$dt3可以正常工作为美国格式,$dt4失败,因为它说它是不正确的格式,所以无法解析它,所以我尝试在创建$dt4之前使用setlocale来en_GB,但是没有帮助,有什么想法吗 $dt = new DateTime('13.03.2014'); echo $dt->format('Y-m-d'); $dt2 = new DateTime('13-0
$dt = new DateTime('13.03.2014');
echo $dt->format('Y-m-d');
$dt2 = new DateTime('13-03-2014');
echo $dt2->format('Y-m-d');
$dt3 = new DateTime('03/13/2014');
echo $dt3->format('Y-m-d');
setlocale(LC_ALL, 'en_GB');
$dt4 = new DateTime('13/03/2014');
echo $dt4->format('Y-m-d');
DateTime的构造函数似乎并不关心我从本页收集的描述valid的语言环境。相反,试试运气。试试这个:
<?php
$date = DateTime::createFromFormat('d.m.Y', '13.03.2014', new DateTimeZone('Europe/Berlin'));
echo $date->format('Y-m-d');
您可以将“d.m.Y”转换为所需的任何输入格式,并且不要忘记设置日期时区。您正在寻找的。