返回值为'customvariablename'

时间:2013-02-03 19:29:32

标签: php

我正在尝试抓取文件并在每个图像路径的开头插入“../../”。不幸的是,脚本超时了,因为在添加之前只花了几秒钟才能运行,有些东西告诉我它没有做我认为应该做的事情。这就是我的做法:

$filedata = substr_replace(substr($filedata,$imageBeginning,1),"../../",$imageBeginning);

我正在抓取整个HTML文件来完成此任务,因此我需要一个有效的解决方案。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

这是完全未经测试的,但是像这样:

preg_replace('/(<img\s+.*?src=")(.*\\.(?:jpg|png|bmp|gif).*?>)/', '$1../../$2', $filedata);

说明:您正在使用正则表达式进行2次捕获。第一个是从img标记的开头到src属性的开头的所有内容。第二个是src属性值及其后的所有内容。然后你只需在替换中间插入“../../”。

http://php.net/manual/en/function.preg-replace.php