本篇內(nèi)容介紹了“php怎么用正則匹配文章中的遠(yuǎn)程圖片地址并下載圖片至本地”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶,將通過(guò)不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名與空間、網(wǎng)頁(yè)空間、營(yíng)銷軟件、網(wǎng)站建設(shè)、綏德網(wǎng)站維護(hù)、網(wǎng)站推廣。使用php的正則表達(dá)式來(lái)實(shí)現(xiàn):
$content = '這里是文章內(nèi)容,這里插入一張圖片測(cè)試 '; $content = stripslashes ( $content ); $img_array = array (); // 匹配所有遠(yuǎn)程圖片 preg_match_all ( "/(src|SRC)=["|'| ]{0,}(http://(.*).(gif|jpg|jpeg|bmp|png))/isU", $content, $img_array ); // 匹配出來(lái)的不重復(fù)圖片 $img_array = array_unique ( $img_array [2] ); print_r($img_array);
上面就將遠(yuǎn)程圖片給匹配出來(lái)了,我們需要將其保持到本地。這里需要注意兩點(diǎn):
1.圖片保存路徑(圖片存儲(chǔ)目錄)
2.實(shí)際訪問(wèn)圖片地址
下面是完整實(shí)例:(你可以保存到本地服務(wù)器修改相應(yīng)地方進(jìn)行測(cè)試)
php保存遠(yuǎn)程圖片到本地,php正則匹配文章中的圖片地址 '; $content = stripslashes ( $content ); $img_array = array (); // 匹配所有遠(yuǎn)程圖片 preg_match_all ( "/(src|SRC)=["|'| ]{0,}(http://(.*).(gif|jpg|jpeg|bmp|png))/isU", $content, $img_array ); // 匹配出來(lái)的不重復(fù)圖片 $img_array = array_unique ( $img_array [2] ); print_r($img_array); // 時(shí)間無(wú)限制 set_time_limit ( 0 ); foreach ( $img_array as $key => $value ) { $value = trim ( $value ); // 讀取遠(yuǎn)程圖片 $get_file = @file_get_contents ( $value ); // 保存到本地圖片名稱 $imgname = date ( "YmdHis" ) . '_' . rand ( 10000, 99999 ) . "." . substr ( $value, - 3, 3 ); // 保存到本地的實(shí)際文件地址(包含路徑和名稱) $fileName = $imgPath . '/' . $imgname; // 實(shí)際訪問(wèn)的地址 $fileurl = $imgUrl . "/" . $imgname; // 文件寫入 if ($get_file) { $fp = @fopen ( $fileName, "w" ); @fwrite ( $fp, $get_file ); @fclose ( $fp ); } // 替換原來(lái)的圖片地址 $content = ereg_replace ( $value, $fileurl, $content ); } echo $content; ?>
“php怎么用正則匹配文章中的遠(yuǎn)程圖片地址并下載圖片至本地”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!