开发者

Is there any PHP function to format time (not date)?

开发者 https://www.devze.com 2022-12-24 09:52 出处:网络
I have a mysql table field set as time type which stores data in the HH:mm:ss format. So when I list the data, it prints as, for example, 16:30:00. But I want to display hh:mm part only (not the secon

I have a mysql table field set as time type which stores data in the HH:mm:ss format. So when I list the data, it prints as, for example, 16:30:00. But I want to display hh:mm part only (not the seconds).

In case of datetime types, I can do date('H:i', '2010-03-16 16:30:00'). I mean I can retrieve any part. I wonder if there is any similar way like this for time only fields??

Please 开发者_运维知识库see, I can manipulate the time string to get rid of seconds in time part using str_replace, explode etc, I just wonder if there is any standard function there which I am not aware of.


If you want to do this with PHP, you'd have to get a timestamp from the time first, e.g.

echo date('H:i', strtotime('16:30:00'));

will output 16:30. Strtotime will assume the time is for the current date then.


You can let MySQL return the data in the format you want using Date_Format()

edit: as fireeyedboy pointed out there's also a TIME_FORMAT() function.


Another approach is:

SELECT UNIX_TIMESTAMP(time_field) AS tstamp FROM table;

Then you can use PHP's date() function to format it.

$time = date('H:i', $tstamp);
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号