在两个字符之间加一个逗号

时间:2016-10-12 02:39:25

标签: php

我有这个字符串:"09001200"我需要在另一个字符串上打开它:"09:00 - 12:00"

php中是否有任何函数在两个字符之间放置特定字符?喜欢":"介于那之间。

2 个答案:

答案 0 :(得分:3)

可以通过sustr_replace方法

完成
$newString = substr_replace($oldString, $char_to_insert, $pos, 0);

示例:

echo substr_replace("09001200", ":", 2, 0);

输出:09:001200

完整代码:

$old = "09001200";
$new = substr_replace($old, ":", 2, 0);
$new = substr_replace($new, " - ", 5, 0);
$new = substr_replace($new, ":", 10, 0);
echo $new;

输出:09:00 - 12:00

答案 1 :(得分:2)

您正在寻找的功能并不直接存在(插入字符串 到字符串),但你可以用substr_replace模拟这个 功能。逻辑是替换给定的零长度部分 字符串的位置:

$new_str = substr_replace({original}, {string to insert}, {position}, 0);

这显然会一次对一个角色进行操作。为此 原因是,基于正则表达式的操作可能更实用。这是另一个 方法preg_replace

$new = preg_replace('/(\d\d)(\d\d)(\d\d)(\d\d)/', "$1:$2 - $3:$4", $input);