Ⅰ 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]);