我有一个巨大的 excel 文件,我正在导入并存储到日期字段(日期(“Ymd”))。问题是,输入有几种不同的格式,例如:
1) 2015/01/01 // valid format, php converts this to yyyy-mm-dd
2) 2015-01 // supposed to be 2015-01-01
3) jan/18 // supposed to be 2018-01-01
如您所见,虽然大多数以有效格式提供,但(大部分)使用了另外两种格式,即“年-月”和“月/年”。一切都表示 strtotime,下面应该工作 - 但是我将如何表示当月的“第一天”没有提供日期(因为否则它最终会为除(1)之外的所有内容都为空,如果我的理解是正确的)?
//assumes $str is one of the above mentioned formats
if (($timestamp = strtotime($str)) === false) {
$date = null;
} else {
$date = date('Y-m-d', $timestamp);
}
繁花不似锦
阿波罗的战车