在插入[重复]之前将字符串转换为mysql日期格式

问题描述 投票:3回答:3

这个问题在这里已有答案:

我有一个表单,用于上传.csv文件以在mysql表中插入数据。该文件的日期列格式为“dd / mm / yyy”。但是我想以mysql日期格式“yyyy-mm-dd”插入此日期字符串。到目前为止,我有以下代码。

//parse data from csv file line by line
        while(($line = fgetcsv($csvFile)) !== FALSE){
         //insert member data into database
         $db->query("INSERT INTO txns (txn_date, description, amount, status) VALUES ('".$line[0]."','".$line[1]."','".$line[2]."','".$line[3]."','".$line[3]."')");
            }
        }

        //close opened csv file
        fclose($csvFile);

请帮助将日期字符串转换为mysql日期(yyyy-mm-dd)格式。

php mysql date datetime
3个回答
3
投票

试试这个:

$date = date('Y-m-d', strtotime($line[0]));  
// convert date to yyyy-mm-dd

并使用$ date作为列txn_date的值


2
投票

你可以这样做:

$var = '05/01/2017';
$date = str_replace('/', '-', $var);
$result = date('Y-m-d', strtotime($date));

输出:2017-01-05。


0
投票
// date in dd/mm/yyyy format
$date = "05/01/2017"; 

//Explode by / to get an array with day, month, year in separate indexes
$dateArray = explode("/", $date); 

//Concatenate year, month and day into any format you want. 
$newDate = $dateArray[2] . "-" . $dateArray[1] . "-" . $dateArray[0]; 

你可以为此做一个功能

© www.soinside.com 2019 - 2024. All rights reserved.