Home >php教程 >PHP源码 >PHP正则提取或替换img标记属性

PHP正则提取或替换img标记属性

PHP中文网
PHP中文网Original
2016-05-25 17:14:10933browse

PHP正则提取或替换img标记属性

<?php

/*PHP正则提取图片img标记中的任意属性*/
$str = &#39;<center><img src="/uploads/images/20100516000.jpg" height="120" width="120">
<br />PHP正则提取或更改图片img标记中的任意属性</center>&#39;;

//1、取整个图片代码
preg_match(&#39;/<\s*img\s+[^>]*?src\s*=\s*(\&#39;|\")(.*?)\\1[^>]*?\/?\s*>/i&#39;,$str,$match);
echo $match[0];

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

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

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

/*PHP正则替换图片img标记中的任意属性*/
//1、将src="/uploads/images/20100516000.jpg"替换为src="/uploads/uc/images/20100516000.jpg")
print preg_replace(&#39;/(<img.+src=\"?.+)(images\/)(.+\.(jpg|gif|bmp|bnp|png)\"?.+>)/i&#39;,
"\${1}uc/images/\${3}",$str);
echo "<hr/>";

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

?>


 以上就是PHP正则提取或替换img标记属性的内容,更多相关内容请关注PHP中文网(www.php.cn)!


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:PHP plist 生成器Next article:我也来发一个PHP缓存