首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

preg_replace 替换的有关问题

2012-09-23 
preg_replace 替换的问题PHP code$string str……………………img src/img/pvistely/1.jpg /img src/

preg_replace 替换的问题

PHP code
    $string = <<<str        ……………………        <img src="/img/pvistely/1.jpg" />        <img src="/img/pvistely/2.jpg" />        <img src="/img/pvistely/3.jpg" />        ……………………str;    $pattern = array('<img src="/img/pvistely/1.jpg" />','<img src="/img/pvistely/2.jpg" />','<img src="/img/pvistely/3.jpg" />');    $replace = array('[img]1.jpg[/img]','[img]2.jpg[/img]','[img]3.jpg[/img]');    echo preg_replace($pattern, $replace, $string);


得到这样的结果:

PHP code
    ……………………     <[img]1.jpg[/img]>     <[img]2.jpg[/img]>     <[img]3.jpg[/img]>     ……………………



为什么会多出两个尖括号 < > ?
要怎么才能把这个< > 也替换掉?

[解决办法]
$pattern = array('<<img src="/img/pvistely/1.jpg" />>','<<img src="/img/pvistely/2.jpg" />>','<<img src="/img/pvistely/3.jpg" />>');
[解决办法]
你用的是 preg_replace
$pattern 项中两端的<>被当做规则串的分界符了

用 str_replace 就可以了

热点排行