Как изменить 08:00:00 до 08:00 в PHP / MySql

0

У меня есть тип времени в mysql, и я вводю время с форматом HH: MM. Это хранится в DB как HH: MM: 00.

Теперь, когда я показываю, он показывает секунды.

Я хочу показать час и минуты.

Вместо 13:20:00, показывая 13:20 и т.д.

Каков наилучший способ сделать это.

Я могу использовать substr ($ time, 0, 5), но мне интересно, есть ли лучший способ сделать это.

Спасибо заранее.

Теги:
time

4 ответа

1
Лучший ответ

Я предполагаю, что он сохранен в столбце DB типа TIME. В этом случае исправьте его в своем запросе:

SELECT TIME_FORMAT(yourfield, '%H:%i') FROM table;
1

Шины,

учитывая, что у вас есть строка с фиксированной длиной в datbase, вы уже используете лучший метод для форматирования вашего времени (substr). Это дает вам минимальные требования к вычислительной мощности.

Если, однако, вы беспокоитесь о своей элегантности кода и, если случайно строка не фиксированная (например, 9:31:02 вместо 09:31:02), вы можете использовать этот код:

$hours   = strtok( $dbTime, ':');
$minutes = strtok( ':');
$formattedTime = $hours . ':' . $minutes

Надеюсь, это поможет Славянская

1
SELECT DATE_FORMAT(timefield,'%H:%i');
  • 0
    Неправильный порядок параметров, я думаю, что лучше подходит TIME_FORMAT.
  • 0
    Ах, исправил порядок. И time_format ИМХО полезен только при превышении 23-часовой отметки (т.е. вы отображаете количество времени, а не момент времени ).
0

вот часть php, если вы хотите пройти этот маршрут.

эхо-дата ( "h: i" );

http://php.net/manual/en/function.date.php

Ещё вопросы

Сообщество Overcoder
Наверх
Меню