我有以下情况,我有一个html文件,图片标签大约10或更多,但它有所不同。现在我想要实现的是用PHP函数替换图像src,如下面的例子
我想替换像这样的东西
<img src="image1.png" ....
<img src="image2.png" ....
用这个
<img src="<?=imageResize('image1.png',20,15)?>" ...
<img src="<?=imageResize('image2.png',20,15)?>" ..`.
这可能吗?
答案 0 :(得分:3)
我们假设当前页面源包含在$source
中。尝试一些正则表达式:
<?php
preg_replace ('/<img src="(.+)"/Ui', '<img src="<?=imageResize(\'\\1\',20,15)?>"', $source);
?>
答案 1 :(得分:0)
我看到2个案例:
<img src="<?php echo imageResize('image1.png',20,15);?>" ...
<?php imageResize('image1.png',20,15);?> <img src="image1.png" ...
答案 2 :(得分:0)
使用输出缓冲区捕获输出,然后应用regex进行替换。
<?ob_strart();?>
<img src="image1.png" />
<img src="image2.png" />
<?php
$cnt = ob_get_clean();
$cnt = preg_replace ('/<img src="([^"]+)"/', '<img src="<?=imageResize(\'\\1\',20,15)?>"', $cnt);?>
对于执行函数imageresize,您必须在eval()中运行输出。