PHP基于正則批量替換Img中src內(nèi)容實(shí)現(xiàn)獲取縮略圖的功能示例
本文實(shí)例講述了PHP基于正則批量替換Img中src內(nèi)容實(shí)現(xiàn)獲取縮略圖的功能。分享給大家供大家參考,具體如下:
這里PHP用正則批量替換Img中src內(nèi)容,實(shí)現(xiàn)獲取圖片路徑縮略圖的功能
網(wǎng)上很多正則表達(dá)式只能獲取或者替換一個(gè)img的src內(nèi)容,或者只能替換固定的字符串,要?jiǎng)討B(tài)替換多個(gè)圖片內(nèi)容的試了幾個(gè)小時(shí)才解決。
/**
* 圖片地址替換成壓縮URL
* @param string $content 內(nèi)容
* @param string $suffix 后綴
*/
function get_img_thumb_url($content="",$suffix="!c550x260.jpg")
{
$pregRule = "/<[img|IMG].*?src=[\'|\"](.*?(?:[\.jpg|\.jpeg|\.png|\.gif|\.bmp]))[\'|\"].*?[\/]?>/";
$content = preg_replace($pregRule, '<img src="${1}'.$suffix.'" style="max-width:100%">', $content);
return $content;
}
實(shí)例使用代碼:
$content = '<a href="#" rel="external nofollow" rel="external nofollow" ><img class="center" src="https://xxx.com/styles/images/default.jpg"></a>' .'<p><img class="center" src="https://img.xxx.com/images/219_Ig5eZI.jpg" style="max-width: 100%;"></p>'; $newct = get_img_thumb_url($content); print_r($newct);
輸出結(jié)果:
PS:這里再為大家提供2款非常方便的正則表達(dá)式工具供大家參考使用:
JavaScript正則表達(dá)式在線測(cè)試工具:
http://tools.jb51.net/regex/javascript
正則表達(dá)式在線生成工具:
http://tools.jb51.net/regex/create_reg
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php正則表達(dá)式用法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語法入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
相關(guān)文章
使用php來實(shí)現(xiàn)網(wǎng)絡(luò)服務(wù)
在調(diào)用網(wǎng)絡(luò)服務(wù)的過程中,需要兩個(gè)消息,發(fā)送的消息和接受的消息,又來有往方能來往不是。2009-09-09
PHP仿tp實(shí)現(xiàn)mvc框架基本設(shè)計(jì)思路與實(shí)現(xiàn)方法分析
這篇文章主要介紹了PHP仿tp實(shí)現(xiàn)mvc框架基本設(shè)計(jì)思路與實(shí)現(xiàn)方法,簡(jiǎn)單講述了php實(shí)現(xiàn)tp框架的原理,并結(jié)合實(shí)例形式分析了相關(guān)控制器、視圖及URL訪問操作技巧與注意事項(xiàng),需要的朋友可以參考下2018-05-05
PHP編程實(shí)現(xiàn)csv文件導(dǎo)入mysql數(shù)據(jù)庫的方法
這篇文章主要介紹了PHP編程實(shí)現(xiàn)csv文件導(dǎo)入mysql數(shù)據(jù)庫的方法,涉及php文件讀取、轉(zhuǎn)換、數(shù)據(jù)庫的連接、插入等相關(guān)操作技巧,需要的朋友可以參考下2017-04-04
PHP 使用MySQL管理Session的回調(diào)函數(shù)詳解
本篇文章文章是對(duì)PHP中使用MySQL管理Session的回調(diào)函數(shù)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06

