Intereting Posts
json encode не работает с массивом объектов Объединить 2 многомерных массива и сумму Обнаружение щелчка внутри IFrame с использованием невидимого div PHP Zend Framework – Zend_Config и глобальное состояние Как получить тело сообщения и вложения в формате XML, используя php / linux с сервера Lotus Domino? PHP хранит пароль в cookie Как использовать AccessDecisionManager в Symfony2 для авторизации произвольных пользователей? Невозможно получить доступ к объявленной глобальной переменной в WordPress В чем разница между запуском скрипта из командной строки и exec () с PHP? Локализация PHP Как я могу эмулировать WHERE 1 в динамическом запросе? Функция PHP и MySQL удаляет неконтролируемые категории из проблемы с базой данных как вычесть две даты и время, чтобы получить разницу CodeIgniter CLI, дающий ошибку system_path ", как представляется, неправильно настроен." При использовании PHP включить странный верхний край

Как преобразовать время с AM / PM на 24-часовой формат в PHP?

Например, у меня есть время в этом формате

eg. 09:15 AM 04:25 PM 11:25 AM 

Как преобразовать его в

 09:15 16:25 23:25 

В настоящее время мой код:

 $format_time = str_replace(" AM", "", $time, $count); if ($count === 0){ $format_time = strstr($time, ' PM', true); $format_time = ...... } 

Однако, похоже, есть более простой и элегантный способ сделать это?

 $time = '23:45'; echo date('g:i a', strtotime($time)); 

Как поместить вышеуказанный образец в мой случай? благодаря

Попробуйте с этим

 echo date("G:i", strtotime($time)); 

или вы можете попробовать это

 echo date("H:i", strtotime("04:25 PM")); 

Если вы используете формат Datetime, см. http://php.net/manual/en/datetime.format.php

Вы можете сделать это :

 $date = new \DateTime(); echo date_format($date, 'Ymd H:i:s'); #output: 2012-03-24 17:45:12 echo date_format($date, 'G:ia'); #output: 05:45pm 

Вы можете использовать это в течение 24 часов до 12 часов:

 echo date("h:i", strtotime($time)); 

И наоборот:

 echo date("H:i", strtotime($time)); 
 $time = '09:15 AM'; $chunks = explode(':', $time); if (strpos( $time, 'AM') === false && $chunks[0] !== '12') { $chunks[0] = $chunks[0] + 12; } else if (strpos( $time, 'PM') === false && $chunks[0] == '12') { $chunks[0] = '00'; } echo preg_replace('/\s[AZ]+/s', '', implode(':', $chunks)); 

PHP 5.3+.

 $new_time = DateTime::createFromFormat('h:i A', '01:00 PM'); $time_24 = $new_time->format('H:i:s'); 

Выезд: 13:00:00

Отлично работает с датами форматирования. Проверьте этот ответ.

Мы можем использовать Carbon

  $time = '09:15 PM'; $s=Carbon::parse($time); echo $military_time =$s->format('G:i'); 

http://carbon.nesbot.com/docs/