|
復(fù)制代碼 代碼如下:
<?php
/*正則取圖片img標(biāo)記中的任意屬性*/
$word = '<p height="22" align="ceNETr">111 22</p> <img src="http://files.jb51.NET/upload/images/aaa.jpg" width="100"><div style="float:left;">中國(guó)人</div>';
//取整個(gè)圖片代碼
preg_match('/</s*img/s+[^>]*?src/s*=/s*(/'|/")(.*?)//1[^>]*?//?/s*>/i',$word,$matches);
echo $matches[0];//結(jié)果:<img src="http://files.jb51.NET/upload/images/aaa.jpg" width="100">
$word = '<p height="22" align="ceNETr">111 22</p> <img height="60" src="http://files.jb51.NET/upload/images/aaa.jpg" width=100 style=><div style="float:left;">中國(guó)人</div>';
//取width
preg_match('/<img.+(width=/"?/d*/"?).+>/i',$word,$matches);
echo $matches[1];
//取height
preg_match('/<img.+(height=/"?/d*/"?).+>/i',$word,$matches);
echo $matches[1];
//取src
preg_match('/<img.+src=/"?(.+/.(jpg|gif|bmp|bnp|png))/"?.+>/i',$word,$matches);
echo $matches[1];
/*正則替換去掉或改變圖片img標(biāo)記中的任意屬性***************************************************************/
$str = '<p height="22" align="ceNETr">111 22</p> <img height="60" src="http://files.jb51.NET/upload/images/aaa.jpg" width=100 style=><div style="float:left;">中國(guó)人</div>
<p height="22" align="ceNETr">31313 224344</p> <img src="http://files.jb51.NET/upload/images/bbb.jpg" height="60" width=100 style=><div style="float:left;">1212121</div>';
//改變src屬性(此處將原來的src="http://files.jb51.NET/upload/images/bbb.jpg"改變?yōu)閟rc="http://files.jb51.NET/upload/_thumbs/Images/bbb.jpg")
print preg_replace('/(<img.+src=/"?.+)(images//)(.+/.(jpg|gif|bmp|bnp|png)/"?.+>)/i',"/${1}_thumbs/Images//${3}",$str);
/*改變src屬性,
此處將原來的src="http://files.jb51.NET/upload/images/bbb.jpg"改變?yōu)閟rc="http://files.jb51.NET/upload/_thumbs/Images/bbb.jpg",并舍棄寬和高
(比如你想在前臺(tái)顯示縮略圖,但數(shù)據(jù)庫(kù)中存儲(chǔ)的是原圖的路徑。為什么要舍棄寬高??你縮略圖啊!還是原圖的寬高,會(huì)怎樣???)
*/
print preg_replace('/(<img).+(src=/"?.+)images//(.+/.(jpg|gif|bmp|bnp|png)/"?).+>/i',"/${1} /${2}_thumbs/Images//${3}>",$str);
?>
php技術(shù):php正則取img標(biāo)記中任意屬性(正則替換去掉或改變圖片img標(biāo)記中的任意屬性),轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。