PHP将字符插入字符串中的某个位置

时间:2015-02-16 19:50:17

标签: php str-replace

我有字符串(链接)

我想在此字符串中插入某些字符 {s}

Patern:http://i.imgur.com/filename{character}.extension

之前: http://i.imgur.com/7k8t8pC.png

之后http://i.imgur.com/7k8t8pCs.png

4 个答案:

答案 0 :(得分:2)

怎么样:

function addstring($ch,$string){  
    $array = explode('/',$string);
    $name = explode('.',end($array));
    array_pop($array);
    $new = implode('/',$array);
    return $new.'/'.$name[0].$ch.'.'.$name[1];
}
var_dump(addstring('CHAR','http://i.imgur.com/7k8t8pC.png'));

答案 1 :(得分:1)

我犹豫要发布这个,但是因为你正在使用路径而不是:

$info = pathinfo($string);
$result = $info['dirname'] . "/" . $info['filename'] . "s." . $info['extension'];

答案 2 :(得分:0)

您可以使用substr_replace:

的小技巧
$newstring = substr_replace( "http://i.imgur.com/7k8t8pC.png", "s", 26, 0);

编辑,一点解释: 它允许用另一个字符串替换部分字符串。您传递原始字符串,要插入的字符串,起始点以及要替换的字符数。但是,如果传递0,那么它会将第二个字符串插入到给定位置的第一个字符串中。

答案 3 :(得分:0)

您可以使用preg_replace()

$str = 'http://i.imgur.com/7k8t8pC.png';

echo preg_replace('/(\.png)/', 's$1', $str);

结果:

http://i.imgur.com/7k8t8pCs.png

或使用str_replace()

$str = 'http://i.imgur.com/7k8t8pC.png';

echo str_replace('.png', 's.png', $str);

结果:

http://i.imgur.com/7k8t8pCs.png