我有一个大型Excel工作表,我通过批量上传插入数据。
我的问题是日期:
日期格式就像09/11/2017。我需要将这些数据插入表格。
任何人都可以通过使用mysql日期格式来建议我如何做到这一点?
答案 0 :(得分:3)
在第一个日期然后使用strtotime(),然后使用日期('Y-m-d')将其转换回来:
$dateFromExcel = strtotime('09/11/2017');
$newDateToInsert = date('Y-m-d',$dateFromExcel);
echo $newDateToInsert;
// 2017-11-09
如果您使用的是PHP 5.2或更高版本 使用
$ymd = DateTime::createFromFormat('d/m/Y', '09/11/2017')->format('Y-m-d');
答案 1 :(得分:0)
你需要先获得行,然后像这样使用。 这是将日期从DD-MM-YYYY转换为YYYY-MM-DD的功能:
function con2mysql($date) {
$date = explode("-",$date);
if ($date[0]<=9) { $date[0]="0".$date[0]; }
if ($date[1]<=9) { $date[1]="0".$date[1]; }
$date = array($date[2], $date[1], $date[0]);
return $n_date=implode("-", $date);
}
答案 2 :(得分:0)
如果您使用phpExcel库来上传exccel文件,那么您可以使用以下行。 它对我来说很完美。
PHPExcel_Style_NumberFormat::toFormattedString($exceldate, 'YYYY-MM-DD');