Php str_replace - 要替换​​的两个值?

时间:2011-05-02 20:54:40

标签: php replace str-replace

使用str_replace我想从此更改$ url:

$url = http://example.com/images/lala1.jpg

到这个

$url = http://example.com/images/lala1-0001.jpg

我的问题是我不知道如何插入“ - ”。

$ url正在改变所以我真的只知道它的末尾有“.jpg”。

到目前为止我的代码:

for($i=1;$i<=9;$i++) {
    $array[] = str_replace('.jpg',sprintf("%04d",$i).'.jpg',$url); }

知道如何让这项工作成功吗?

2 个答案:

答案 0 :(得分:1)

您可能想要使用regular expression

$str = preg_replace('/\.jpg$/', sprintf("-%04d.jpg",$i), $url);

这确保它只会在字符串的末尾被替换。

答案 1 :(得分:0)

Sprintf允许在参数中使用常规字符:

str_replace('.jpg', sprintf("-%04d.jpg", $i), $url);