我从包含军用时间为1330数据库中提取值(不要问为什么)输入字符的字符串,第2个字符后
我想在1330转换至13:30,然后的strtotime运行把13:30:00到下午1:30
我有作家块,我怎么可以把一个冒号:2和3之间的人物,在1330
我从包含军用时间为1330数据库中提取值(不要问为什么)输入字符的字符串,第2个字符后
我想在1330转换至13:30,然后的strtotime运行把13:30:00到下午1:30
我有作家块,我怎么可以把一个冒号:2和3之间的人物,在1330
可以使用做到这一点:
$time = substr($time, 0, 2) . ':' . substr($time, 2);
但是你为什么要分裂。你可以直接得到你的输出下午1:30有:
echo date("h:i a",strtotime(1330));
第二个选项会给你造成更多更快。为什么浪费时间分裂。
希望这会有所帮助:)
一个显而易见的方法是使用substr
:
$time = "1330";
$new_time = substr($time, 0, 2) . ':' . substr($time, 2);
另一种解决方案是preg_replace
:
$time = "1330";
$new_time = preg_replace('/(\d{2})(\d{2})/', '\1:\2', $time);
此外,str_split
是可能的:
$time = "1330";
$new_time = implode(':', str_split($time, 2));
偷懒的方法:
chunk_split('1330', 2, ':') . '00';
应该能够只是做:
$time = '1330';
$part_a = substr($time, 0, 2);
$part_b = substr($time, 2, 2);
$new_time = $part_a . ':' . $part_b;
不错!我第一次看到'chunk_split'。在这种情况下非常有用+1 – knittl 2012-01-31 15:23:09