0
我在阅读HTML文件,我想改变所有的URL(在href和SRC属性),例如,从这个:两个str_replace函数不工作相同的字符串
/static/directory/dynamic/directories
这样:
dynamic/directories
使用此项功能:
foreach($array as $k => $v) {
if(stripos($v, 'src=')!==false) {
$array[$k] = str_replace('src="'.$this->getBadPathPart(), 'src="'.$d, $v);
}
if(stripos($v, 'href=')!==false) {
$array[$k] = str_replace('href="'.$this->getBadPathPart(), 'href="'.$d, $v);
}
}
一切运作良好,除了一种情况:当有两个或多个标签用的src/href属性在一行中,只有第一次被改变。为什么?
例如:
... SRC = “/ BLA/BLA /测试/ test.png” .... HREF = “/ BLA/BLA /其他” .... SRC =” /bla/bla/doc.xls “
变为:
... SRC = ”测试/ test.png .... HREF =“/ BLA/BLA /其他” .. .. src =“/ bla/bla/doc.xls”