У меня есть тип времени в mysql, и я вводю время с форматом HH: MM. Это хранится в DB как HH: MM: 00.
Теперь, когда я показываю, он показывает секунды.
Я хочу показать час и минуты.
Вместо 13:20:00, показывая 13:20 и т.д.
Каков наилучший способ сделать это.
Я могу использовать substr ($ time, 0, 5), но мне интересно, есть ли лучший способ сделать это.
Спасибо заранее.
Я предполагаю, что он сохранен в столбце DB типа TIME. В этом случае исправьте его в своем запросе:
SELECT TIME_FORMAT(yourfield, '%H:%i') FROM table;
Шины,
учитывая, что у вас есть строка с фиксированной длиной в datbase, вы уже используете лучший метод для форматирования вашего времени (substr). Это дает вам минимальные требования к вычислительной мощности.
Если, однако, вы беспокоитесь о своей элегантности кода и, если случайно строка не фиксированная (например, 9:31:02 вместо 09:31:02), вы можете использовать этот код:
$hours = strtok( $dbTime, ':');
$minutes = strtok( ':');
$formattedTime = $hours . ':' . $minutes
Надеюсь, это поможет Славянская
SELECT DATE_FORMAT(timefield,'%H:%i');
вот часть php, если вы хотите пройти этот маршрут.
эхо-дата ( "h: i" );
time_format
ИМХО полезен только при превышении 23-часовой отметки (т.е. вы отображаете количество времени, а не момент времени ).