Мое время в mysql находится в форме hh: mm: ss. Как я могу преобразовать это в 12-часовое время, а также удалить секунды, потому что все они 00.
например:
14:30:00
MySQL
$finalresult = mysql_query("SELECT * FROM events WHERE clubID IN (" . implode(',', $clubIDs) . ") ORDER BY date ASC, TIME(startTime) ASC"); while($finalrow = mysql_fetch_assoc($finalresult)) { $originaltime = $finalrow['startTime']; $newtime = TIME_FORMAT($originaltime, '%h:%i %p'); }
Используйте TIME_FORMAT :
SELECT TIME_FORMAT('14:30:00', '%h:%i %p'); /* 02:30 PM */
Измените свой PHP на что-то вроде этого:
$finalresult = mysql_query("SELECT Field1, Field2, TIME_FORMAT(DateField, '%h:%i %p') AS TheTime FROM events WHERE clubID IN (" . implode(',', $clubIDs) . ") ORDER BY date ASC, TIME(startTime) ASC");
Это включает в себя избавление от *
и указание каждого поля, которое вы хотите.
Если это тип TIME
, вы можете использовать функцию TIME_FORMAT
.
Чтобы получить 12-часовое время без секунд:
TIME_FORMAT(myTime, '%h:%i')
Время 14:24:38 выйдет как 2:24
.
Если вам нужно обозначение AM / PM теперь, когда вы перешли на 12-часовые часы, просто добавьте код формата %p
:
TIME_FORMAT(myTime, '%h:%i %p')
Для этого время 14:24:38 выйдет как 14:24.