Ich empfehle PHP OOP Art und Weise, wie sie immer besser als jede prozedurale Art und Weise sind (wie mit strtotime
):
$time = '5:04 pm';
$date = DateTime::createFromFormat('g:i a', $time);
echo $date->format('H:i');//17:04
Bitte beachten Sie, dass Sie Folgendes angeben müssen: 5:04 pm, Sie CAN NOT Verwenden Sie 5: 4 Uhr.
Grund ist, dass kein Datumsformat für Minuten ohne führende Null existiert.
als Referenz sehen: http://php.net/manual/en/datetime.createfromformat.php
Wenn Sie Zeit in diesem Format haben müssen, dann werden Sie es manipulieren müssen, nachdem Sie Ihre Zeit erhalten wie folgt:
$time = '5:4 pm';//works for formats -> '5:4 pm' gives 17:04,'5:40 pm' gives 17:40
$time2 = str_replace(' ',':',$time);
$time3 = explode(':',$time2);
if(((int)$time3[1])<10)//check if minutes as over 10 or under 10 and change $time accordingly
$time = $time3[0].':0'.$time3[1].' '.$time3[2];
else
$time = $time3[0].':'.$time3[1].' '.$time3[2];
$date = DateTime::createFromFormat('g:i a', $time);
echo $date->format('H:i');
Ich hoffe, dass es hilft
versuchen echo date ('H: i', strtotime ('05: 04.00 ')); – rahulsm
also ist es in Variable? bedeutet deine aktuelle Zeit? – rahulsm
Ja das ist richtig –