2017-03-18 2 views
0

이 PHP 코드를 가져 와서 MySQL 시간 형식으로 시간을 포맷하는 방법을 알 수 없습니다. '두 자리 초를 찾을 수 없습니다.'라는 오류 메시지를 계속 표시합니다. 당신은 여기에 많은 오류가DateTime :: createFromFormat - 두 자리 숫자를 찾을 수 없습니다.

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

답변

1

: 여기

은 PHP 코드입니다. 오류 메시지에서 알 수 있듯이 형식이 잘못되었습니다. $timeMeeting에 초를 지정하지 않았지만 오전이나 오후가 있습니다. 또한 24 시간짜리 시간은 없지만 12 시간짜리 시간을 사용하고 그것을 에코 할 때 날짜를 형식화하는 것을 잊어 버리십시오.

DateTime::createFromFormat()은 datetime이 현재 들어있는 형식을 사용하여 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

관련 문제