Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP DateTime不允许使用日期格式_Php_Datetime_Date_Php 5.3 - Fatal编程技术网

PHP DateTime不允许使用日期格式

PHP DateTime不允许使用日期格式,php,datetime,date,php-5.3,Php,Datetime,Date,Php 5.3,可能重复: 我有一个日期,如下所示,但DateTime函数不允许: $start = new DateTime('13/10/2012'); echo $start->format("Y-m-d"); 它允许所有其他方法,即使使用“10/13/2012”,但我不能更改它,因为这是我接收日期的格式 有什么想法吗 谢谢尝试DateTime::createFromFormat like $start = DateTime::createFrom

可能重复:

我有一个日期,如下所示,但DateTime函数不允许:

            $start = new DateTime('13/10/2012');
            echo $start->format("Y-m-d");
它允许所有其他方法,即使使用“10/13/2012”,但我不能更改它,因为这是我接收日期的格式

有什么想法吗


谢谢

尝试DateTime::createFromFormat like

$start = DateTime::createFromFormat('d/m/Y', '13/10/2012');

尝试DateTime::createFromFormat,如

$start = DateTime::createFromFormat('d/m/Y', '13/10/2012');

您是否尝试过createFromFormat()


您是否尝试过createFromFormat()


根据文档,它只接受特定格式的日期,其中之一是“american month,day,year”,如果您提供13作为月份,则显然会失败

我总是尽量避免使用模棱两可的日期格式。代码中主要使用“2012-10-13”,面向用户的日期使用“2012年10月13日”。这两者都可以被我有经验的任何日期格式化API可靠地解析

但是,当被迫使用一种不明确的格式时,我会手动解析它,而不是依赖PHP的内置API,因为我完全理解它将要做什么。例如:

list($day, $month, $year) = preg_split('/[^0-9]+/', '13/10/2012');
$start = new DateTime("$year-$month-$day");

根据文档,它只接受特定格式的日期,其中之一是“american month,day,year”,如果您提供13作为月份,则显然会失败

我总是尽量避免使用模棱两可的日期格式。代码中主要使用“2012-10-13”,面向用户的日期使用“2012年10月13日”。这两者都可以被我有经验的任何日期格式化API可靠地解析

但是,当被迫使用一种不明确的格式时,我会手动解析它,而不是依赖PHP的内置API,因为我完全理解它将要做什么。例如:

list($day, $month, $year) = preg_split('/[^0-9]+/', '13/10/2012');
$start = new DateTime("$year-$month-$day");