当前位置:

php提取html中的img标签

本文最后更新于2019-05-10,已超过 1年没有更新,如果文章内容、图片或者下载资源失效,请留言反馈,我会及时处理,谢谢!

温馨提示:本文共1462个字,读完预计4分钟。

1、提取所有img标签

<?php $html = <<<EEE
如何把html里面的img标签整个提取出来,如<img src="images/1.jpg" />,<img src="images/2.jpg" />我这边整个都要,不知道要怎么写
EEE;
preg_match_all('/<img\s+src=".*?"\s+\/>/', $html, $matches);
var_dump($matches);
array(1) {
  [0]=>
  array(2) {
    [0]=>    string(26) "<img src="images/1.jpg" />"
    [1]=>    string(26) "<img src="images/2.jpg" />"
  }
}

2、提取html图片(img)src地址与任意属性的方法

<?php 
/*PHP正则提取图片img标记中的任意属性*/
$str = '<center><img src="/uploads/images/2017020716154162.jpg" height="120" width="120"><br />PHP正则提取或更改图片img标记中的任意属性</center>';   
//1、取整个图片代码 
preg_match('/<\s*img\s+[^>]*?src\s*=\s*(\'|\")(.*?)\\1[^>]*?\/?\s*>/i',$str,$match); 
echo $match[0];   

//2、取width 
preg_match('/<img.+(width=\"?\d*\"?).+>/i',$str,$match); 
echo $match[1];   

//3、取height 
preg_match('/<img.+(height=\"?\d*\"?).+>/i',$str,$match); 
echo $match[1];   

//4、取src 
preg_match('/<img.+src=\"?(.+\.(jpg|gif|bmp|bnp|png))\"?.+>/i',$str,$match); 
echo $match[1];   

/*PHP正则替换图片img标记中的任意属性*/

//1、将src="/uploads/images/20100516000.jpg"替换为src="/uploads/uc/images/2017020716154162.jpg") 
print preg_replace('/(<img.+src=\"?.+)(images\/)(.+\.(jpg|gif|bmp|bnp|png)\"?.+>)/i',"\${1}uc/images/\${3}",$str); 
echo "<hr/>";   

//2、将src="/uploads/images/20100516000.jpg"替换为src="/uploads/uc/images/2017020716154162.jpg",并省去宽和高 
print preg_replace('/(<img).+(src=\"?.+)images\/(.+\.(jpg|gif|bmp|bnp|png)\"?).+>/i',"\${1} \${2}uc/images/\${3}>",$str); 

?>

原文链接:,转发请注明来源!
评论已关闭。