PHP 日期转换为 strtotime
PHP date conversion to strtotime
我有一个 array
,其中每条记录都有一个 'date'
字段。日期采用以下格式:'10/09/2015'
。当我在这些日期上使用 strtotime
时,其中一些会显示为 false
。我认为数据结构存在错误,所以我创建了这个简单的 array
和一个简单的 foreach
循环,在某些情况下它们输出 false
。它不喜欢什么?
$dates = [];
$someData = [
'21/05/2014',
'22/05/2014',
'09/06/2014',
'04/07/2014',
];
foreach($someData as $date) {
$dates[] = strtotime($date);
}
print_r($dates);die;
您需要了解此处日期的日期格式。
这里 m/d/Y
被认为是标准的美国日期格式。
所以当你的约会对象是
'09/06/2014',//it should be considered as 06 september 2014
'04/07/2014',//it should be considered as 07 april 2014
当你的约会对象像
'21/05/2014',
'22/05/2014',
那么上面的日期不符合美国日期格式的标准,即 m/d/Y
而你可以在这里做的是将 /
和 -
一起替换为你的日期转换为 d-m-Y
的欧洲日期格式
注意 m/d/y 或 d-m-y 格式的日期;如果分隔符是斜杠 (/),则假定为美式 m/d/y。如果分隔符是破折号 (-) 或点 (.),则采用欧洲 d-m-y 格式。为避免潜在的错误,您应该尽可能使用 YYYY-MM-DD 日期或 date_create_from_format()。
我有一个 array
,其中每条记录都有一个 'date'
字段。日期采用以下格式:'10/09/2015'
。当我在这些日期上使用 strtotime
时,其中一些会显示为 false
。我认为数据结构存在错误,所以我创建了这个简单的 array
和一个简单的 foreach
循环,在某些情况下它们输出 false
。它不喜欢什么?
$dates = [];
$someData = [
'21/05/2014',
'22/05/2014',
'09/06/2014',
'04/07/2014',
];
foreach($someData as $date) {
$dates[] = strtotime($date);
}
print_r($dates);die;
您需要了解此处日期的日期格式。
这里 m/d/Y
被认为是标准的美国日期格式。
所以当你的约会对象是
'09/06/2014',//it should be considered as 06 september 2014
'04/07/2014',//it should be considered as 07 april 2014
当你的约会对象像
'21/05/2014',
'22/05/2014',
那么上面的日期不符合美国日期格式的标准,即 m/d/Y
而你可以在这里做的是将 /
和 -
一起替换为你的日期转换为 d-m-Y
注意 m/d/y 或 d-m-y 格式的日期;如果分隔符是斜杠 (/),则假定为美式 m/d/y。如果分隔符是破折号 (-) 或点 (.),则采用欧洲 d-m-y 格式。为避免潜在的错误,您应该尽可能使用 YYYY-MM-DD 日期或 date_create_from_format()。