2017-03-18 34 views
0

我無法弄清楚如何讓這個PHP代碼來格式化我的時間爲MySQL時間格式。給我一個錯誤說:'兩位數秒找不到'。DateTime :: createFromFormat - 找不到兩位數的秒

這裏是PHP代碼:

<?php 
    $timeMeeting = "6:00pm"; 
    $mysqlTimeMeeting = DateTime::createFromFormat('H:i:s', $timeMeeting); 
    echo "time: " . $mysqlTimeMeeting . "<br />"; 
    var_dump(DateTime::getLastErrors()); 
?> 

回答

1

這裏有很多誤區。你的格式不正確,因爲錯誤消息告訴你。您沒有在$timeMeeting中指定任何秒數,但您確實有AM或PM。你也沒有24小時的時間,但12小時的時間,並忘記格式化你的日期,當你回聲。

基本上你似乎誤解了DateTime::createFromFormat()是如何工作的,因爲它要求你使用datetime當前的格式來讀取日期時間(你必須告訴它它是什麼格式,因爲它不是標準的,否則你不需要使用此方法),然後以您指定的新格式輸出它。

<?php 
    $timeMeeting = "6:00pm"; 
    $mysqlTimeMeeting = DateTime::createFromFormat('h:ia', $timeMeeting); 
    echo "time: " . $mysqlTimeMeeting->format('H:i:s') . "<br />"; 
    var_dump(DateTime::getLastErrors()); 
?> 

Demo

+0

運行完美!謝謝! – dmikester1