Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在PHP/MySql中将08:00:00更改为08:00_Php_Mysql_Time - Fatal编程技术网

如何在PHP/MySql中将08:00:00更改为08:00

如何在PHP/MySql中将08:00:00更改为08:00,php,mysql,time,Php,Mysql,Time,我在mysql中有时间类型,输入的时间格式为HH:MM。它以HH:MM:00的形式存储在数据库中 现在当我显示时,它也显示秒 我只想显示小时和分钟 而不是13:20:00,显示13:20等 最好的方法是什么 我可以使用substr($time,0,5),但我想知道是否有更好的方法来实现它 提前谢谢。我想它保存在时间类型的DB列中。在这种情况下,请在查询中修复它: SELECT DATE_FORMAT(timefield,'%H:%i'); SELECT TIME_FORMAT(yourfiel

我在mysql中有时间类型,输入的时间格式为HH:MM。它以HH:MM:00的形式存储在数据库中

现在当我显示时,它也显示秒

我只想显示小时和分钟

而不是13:20:00,显示13:20等

最好的方法是什么

我可以使用substr($time,0,5),但我想知道是否有更好的方法来实现它


提前谢谢。

我想它保存在时间类型的DB列中。在这种情况下,请在查询中修复它:

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

我想它保存在类型为TIME的DB列中。在这种情况下,请在查询中修复它:

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

如果您想走这条路,这里是php部分

回音日期(“h:i”)


如果您想走这条路,这里是php部分

回音日期(“h:i”)

考虑到datbase中有一个固定长度的字符串,您已经在使用最佳方法格式化时间(substr)。这使您对计算能力的要求最低

但是,如果您担心您的代码是否优雅,并且字符串可能不是固定长度(如9:31:02而不是09:31:02),则可以使用以下代码:

$hours   = strtok( $dbTime, ':');
$minutes = strtok( ':');
$formattedTime = $hours . ':' . $minutes
我希望这有帮助 斯拉夫人

考虑到datbase中有一个固定长度的字符串,您已经在使用最佳方法格式化时间(substr)。这使您对计算能力的要求最低

但是,如果您担心您的代码是否优雅,并且字符串可能不是固定长度(如9:31:02而不是09:31:02),则可以使用以下代码:

$hours   = strtok( $dbTime, ':');
$minutes = strtok( ':');
$formattedTime = $hours . ':' . $minutes
我希望这有帮助
斯拉夫人

错误的参数顺序,我认为时间格式更合适。啊,修正了顺序。而
time\u格式
仅在超过23小时时有用(即显示的是时间量而不是时间点)。参数顺序错误,我认为time\u格式更合适。啊,修复了顺序。而
time\u格式
仅在超过23小时时有用(即,显示的是时间量而不是时间点)。