PHP字符串修改问题

时间:2011-09-30 06:39:56

标签: php

我有一个奇怪的问题。我正好像800,1200那样得到时间......

我希望输出字符串像8:00,12:00 .. 我知道其他选择,但任何人都可以建议我完成它的最短路径..?plz

3 个答案:

答案 0 :(得分:4)

一种方式:

echo preg_replace('^(\d{1,2})(\d{2})$', '$1:$2', $time);

答案 1 :(得分:1)

另一种方式

echo substr($time, 0, 3 === strlen($time) ? 1 : 2) . ':' . substr($time, -2);

或者你可以规范化长度

$time = str_pad($time, 4, 0, STR_PAD_LEFT);

echo substr($time, 0, 2) . ':' . substr($time, 2, 2);

答案 2 :(得分:0)

如果您的来源是字符串,如“800”或“1200”,则deceze的解决方案将执行:

preg_replace('^(\d{1,2})(\d{2})$', '$1:$2', $time);

但如果是日期格式化问题,那么这是正确的方法

date("H:i");