如何从PHP时间字符串中仅提取小时数据?

Jac*_*coe 3 php mysql

我在数据库中有一组时间记录,格式为'09:51:06'(小时,分钟,秒).

我有一个查询从数据库中检索这些时间,但我只关心小时参考.

如何摆脱字符串的其余部分,只是将小时广告到数组中?所以在上面的例子中,我只想保留'09'.

我已经研究了爆炸和子串,但似乎无法弄明白.

谢谢.

jwu*_*ler 9

爆炸字符串看起来像这样(您可能希望添加intval()以便能够将其用作实数):

$hours = array_shift(explode(':', '09:51:06'));
Run Code Online (Sandbox Code Playgroud)

但是你可能正在寻找正确的查询,而不是事后这样做.如果您正在处理时间类型,则可以使用MySQL的日期和时间函数(HOUR()在本例中):

SELECT HOUR(`time_column`) AS `hour` FROM `your_table`
Run Code Online (Sandbox Code Playgroud)

  • 我同意数据库解决方案.但是如果你必须用代码来做,那么`$ h = substr($ time,0,2)`是微不足道的. (2认同)