>我正在使用PHP,我正在尝试从格式为31/12/2014的Excel文档中导入日期,但是当我使用此代码时
$date_debut = $data->sheets[0]["cells"][$x][1];
echo date('Y-m-l', strtotime($date_debut));
$date_middle = str_replace('/', '-', $date_debut);
$date = strtotime($date_middle);
$date_facture = date('Y-m-d', $date);
我得到 1970-01-01。我尝试了许多解决方案,但我无法理解这个问题。我也试过
$date_facture = date_create($date_debut)->format('Y-m-d');
但我仍然有同样的问题。
使用DateTime::createFromFormat
$date = DateTime::createFromFormat('d/m/Y', '31/12/2014' );
echo $date->format('Y-m-d');
in SQL
$date_debut = '31/12/2014';
$sql = mysql_query("INSERT INTO ma_table SET mon_champ_date = STR_TO_DATE('$date_debut', '%d/%m/%Y'), ...");
我发现以下内容对我有用:
$date_time = $rowVal[3];//这是在 excel 中格式化为 dd/mm/yy H:i:s 的日期。
$date_time = strtotime($date_time);//strtotime 显然理解这种格式。
$date_time = date('Y-m-d H:i:s', $date_time);//将 strtotime 版本与 date() 一起使用。