Я ищу способ конвертировать время армии (например, 23:00) в основное время с выражением AM / PM.
Просто передайте свое время в функции strtotime
следующим образом:
$time_in_12_hour_format = date("g:ia", strtotime("23:00")); echo $time_in_12_hour_format;
http://www.php.net/manual/en/function.date.php
$army_time_str = "23:00"; $regular_time_str = date( 'g:i A', strtotime( $army_time_str ) ); echo $regular_time_str;
input $ time имеет форму 'XXXX' (например, '0000', '0001', …, '2300'). я не мог найти функцию для этого, поэтому написал следующее. хотел опубликовать здесь, если кто-то ищет то же самое.
function convert_army_to_regular($time) { $hours = substr($time, 0, 2); $minutes = substr($time, 2, 2); if ($hours > 12) { $hours = $hours - 12; $ampm = 'PM'; } else { if ($hours != 11) { $hours = substr($hours, 1, 1); } $ampm = 'AM'; } return $hours . ':' . $minutes . $ampm; }