Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.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 strotime()未转换为时间戳_Php_Mysql_Date_Unix Timestamp - Fatal编程技术网

Php strotime()未转换为时间戳

Php strotime()未转换为时间戳,php,mysql,date,unix-timestamp,Php,Mysql,Date,Unix Timestamp,我有一个循环,其中的日期是以不同的格式出现的,比如对于某些值,它将类似于'10-13-2013 04:31',对于某些值,它类似于'2013-10-14T22:14:40-0700'。我试图将其作为datetime/timestamp列的值存储在DB中,但第一种格式是10-13-2013 04:31,它失败了。因此,我尝试使用strotime()将其转换为UNIX时间戳。它对某些值起作用,并为值存储零,如'10-13-2013 04:31'。我认为这是因为它将第二个值视为月份,因此失败。我的代码

我有一个循环,其中的日期是以不同的格式出现的,比如对于某些值,它将类似于
'10-13-2013 04:31'
,对于某些值,它类似于
'2013-10-14T22:14:40-0700'
。我试图将其作为datetime/timestamp列的值存储在DB中,但第一种格式是
10-13-2013 04:31
,它失败了。因此,我尝试使用
strotime()
将其转换为UNIX时间戳。它对某些值起作用,并为值存储零,如
'10-13-2013 04:31'
。我认为这是因为它将第二个值视为月份,因此失败。我的代码如下:

foreach($reports as $report){
    echo strtotime($report->transactionDate);
}
strotime()
无法分析
mm dd yyyy
格式。相反,您应该像这样使用:

$date = '10-13-2013 04:31';
$obj  = DateTime::createFromFormat('m-d-Y H:i', $date);
$date = $obj->format('Y-m-d H:i:s');