网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

怎么在PHP中利用正则表达式获取页面中图片的地址-创新互联

怎么在PHP中利用正则表达式获取页面中图片的地址?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

10余年的临湘网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。营销型网站的优势是能够根据用户设备显示端的尺寸不同,自动调整临湘建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联建站从事“临湘网站设计”,“临湘网站推广”以来,每个客户项目都认真落实执行。
]*)((.gif)|(.jpg)|(.bmp)|(.png)|(.GIF)|(.JPG)|(.PNG)|(.BMP)))/";
preg_match_all ($match_str,$str,$out,PREG_PATTERN_ORDER);
return $out;
}
?>

/"'s]*)/i

,我使用kindeditor保存文章,但是需要取出第N个图片的地址作为文章的标志图片,文章代码(内容的html)保存到数据库一个字段,然后图片地址保存到另外一个字段.我就是使用上面的正则解决的.


我说明下,上面的地址是直接获取img标签内src属性的值.在使用该正则的php页面访问该路径如果能找到图片的话,可以直接使用,如果不能,你可以使用preg_match_all将所有地址先保存到数组,然后处理路径,比如获取文件名称(不含路径部分),然后重新组成url,再删除图片.


我的例子:


preg_match_all("/"'s]*)/i",str_ireplace("\","",$content),$arr);

呵呵 我的内容部分被php给加上转义了,所以我需要先把去除,str_ireplace("\","",$content),然后将匹配的内容保存到$arr数组(二维的).


$arr[1]就是存储该路径的数组.


实例


'; preg_match_all("/(href|src)=(["|']?)([^ "'>]+.($ext))\2/i", $str, $matches); var_dump($matches); ?>

结果


array(5) {
[0]=>
array(3) {
[0]=>
string(57) "src="https://www.jb51.net /data/soft_img/2010091101619.jpg""
[1]=>
string(57) "src="/tupian/20230522/404.html
[2]=>
string(57) "src="https://www.jb51.net /data/soft_img/2010092839019.jpg""
}
[1]=>
array(3) {
[0]=>
string(3) "src"
[1]=>
string(3) "src"
[2]=>
string(3) "src"
}
[2]=>
array(3) {
[0]=>
string(1) """
[1]=>
string(1) """
[2]=>
string(1) """
}
[3]=>
array(3) {
[0]=>
string(51) "https://www.jb51.net /data/soft_img/2010091101619.jpg"
[1]=>
string(51) "https://www.jb51.net /data/soft_img/2010091029938.jpg"
[2]=>
string(51) "https://www.jb51.net /data/soft_img/2010092839019.jpg"
}
[4]=>
array(3) {
[0]=>
string(3) "jpg"
[1]=>
string(3) "jpg"
[2]=>
string(3) "jpg"
}
}

PHP正则匹配图片并给图片加链接详解


$newstext=preg_replace(preg_replace('/(]+srcs*=s*”?([^>"s]+)”?[^>]*>)/im', ‘$1', $newstext);

1.preg_replace和str_replace的区别:


str_replace只是纯字符替换,而preg_replace才是正则替换


2.$0,$1,$2等的说明:


$0指的是被整个模式所匹配的文本;


$1指的是首个 ( ) 引用的串;


$2指的是第二个()引用的串; 以此类推


关于怎么在PHP中利用正则表达式获取页面中图片的地址问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。


分享标题:怎么在PHP中利用正则表达式获取页面中图片的地址-创新互联
浏览地址:http://bjjierui.cn/article/dsggsp.html

其他资讯