Ⅰ php正則匹配圖片地址
preg_match_all('/<img[^>]*src=(\'|\")(.*?)\\1[^>]*>/i',$str,$match);
foreach($match[2] as $v){
$a = explode("medium/",$v);
$b[] = $a[1];
}
print_r($b);
Ⅱ PHP preg_match 圖片地址
你這是抓取的json數據吧。既然是json,為什麼不先將其反序列化後再使用呢?
$json=//這里是你抓獲的json數據
$res=json_decode($json,true);//解析為數組
for($i=0;$i<$res['data'].length;$i++){
echo$res['data'][i]['thumbURL'];//列印縮略圖地址
}
如果我的回答解決了你的問題,請採納!你的採納是我答題的動力!
如有疑問,請追問。
Ⅲ php內容中提取圖片地址
<?php
$content='<imgtitle=""weixin.jpg"/"src=""
;
$content=str_replace('"','',$content);
preg_match_all('/<img[^>]*srcs?=s?['|"]([^'|"]*)['|"]/is',$content,$picarr);
$src=$picarr[1][0];
echo$src;
Ⅳ php正則表達式替換圖片地址
<?php
/*PHP正則提取圖片img標記中的任意屬性*/
$str
=
'<center><img
src="/uploads/images/20100516000.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/20100516000.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/20100516000.jpg",並省去寬和高
print
preg_replace('/(<img).+(src=\"?.+)images\/(.+\.(jpg|gif|bmp|bnp|png)\"?).+>/i',"\${1}
\${2}uc/images/\${3}>",$str);
?>
Ⅳ 請教如何用php提取圖片url地址
<?php
$text ='<a target="_blank" href="http://www.xxx.com/ddd.jpg">';
preg_match_all("/href\=\"(http:[\w\.\/]+\.[\w]+)\"/", $text,$arr);
var_mp($arr[1][0]);
//http://www.xxx.com/ddd.jpg?>
Ⅵ php 正則匹配網頁中的所有圖片地址,包括img標簽里的,css里的 url() background()
--貼代碼樣板,否則只能給你這個:
/\bhttp:\/\/.+?\(?:jpe?g|gif)\b/is/
Ⅶ php如何使用正則表達式匹配url圖片啊
$image='<imgsrc="/avatar/100/r6s1g11.jpg"/>';
preg_match('/src="(.*?(jpg|jpeg|gif|png))/',$image,$url);
echo$url[1];
網頁上的圖片都是使用IMG標簽載入的,所以在匹配的時候是以src=" 開始匹配,很多人會覺得為什麼不是以 http:// 開始匹配,那是因為圖片地址會有相對地址(如:"/xxx/xxx.jpg")和絕對地址(如:"http://www.xxx.com/xxx/xxx.jpg")兩種情況,相對地址是沒有http:// 的,所以為了這兩種情況都能匹配,故以src=" 是最好的。
".*" 是匹配多個字元的意思,?號的意思是只匹配到第一個出現的jpg或jpeg、gif、png。
因為圖片有很多格式類型,所以用"(jpg|jpeg|gif|png)"來匹配多個類型,"|"是或者的意思。
Ⅷ php正則匹配圖片路徑
給你個我寫的,並在項目中使用了很長時間的正則吧.
/<img.*src\s*=\s*[\"|\']?\s*([^>\"\'\s]*)/i
,我使用kindeditor保存文章,但是需要取出第N個圖片的地址作為文章的標志圖片,文章代碼(內容的html)保存到資料庫一個欄位,然後圖片地址保存到另外一個欄位.我就是使用上面的正則解決的.
我說明下,上面的地址是直接獲取img標簽內src屬性的值.在使用該正則的php頁面訪問該路徑如果能找到圖片的話,可以直接使用,如果不能,你可以使用preg_match_all將所有地址先保存到數組,然後處理路徑,比如獲取文件名稱(不含路徑部分),然後重新組成url,再刪除圖片.
我的例子:
preg_match_all("/<img.*src\s*=\s*[\"|\']?\s*([^>\"\'\s]*)/i",str_ireplace("\\","",$content),$arr);
呵呵 我的內容部分被php給加上\轉義了,所以我需要先把\去除,str_ireplace("\\","",$content),然後將匹配的內容保存到$arr數組(二維的).
$arr[1]就是存儲該路徑的數組.
Ⅸ PHP怎樣根據URL獲取圖片真實地址
樓主可以用curl把這個圖片文件的內容拿出來,然後用file_put_contents()函數把他寫入一個文件里,格式為你想要保存的圖片格式,寫個例子給你吧:
首先用curl拿到這個圖片的代碼:
$url=測試URL地址
$curl=curl_init($url);
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
curl_setopt($curl,CURLOPT_CONNECTTIMEOUT,10);
$content=curl_exec($curl);
curl_close($curl);
file_put_contents('圖片保存的路徑+a.jpg',$content);
大概就這樣子了,我就不測試了,樓主測試一下可行不,file_put_contents()函數不明白就查查手冊,如果有報錯什麼的就帶上報錯信息回復我吧。
Ⅹ preg_match_all() | php正則匹配圖片路徑,怎麼取完整的圖片鏈接。帶http開頭,求解決
你的正則應景可以完美匹配了,結果出現相對地址的原因可能是你的圖片地址本來就不是絕對地址。
var_mp($img_array[2]);