> 백엔드 개발 > PHP 튜토리얼 > 이미지 경로에 대한 PHP 일반 일치 방법 참조

이미지 경로에 대한 PHP 일반 일치 방법 참조

WBOY
풀어 주다: 2016-07-25 08:58:03
원래의
1609명이 탐색했습니다.
本文详细了php中用正则表达式匹配图片路径的方法,有需要的朋友可以参考学习下。

php正则匹配图片路径:

复制代码 代码示例: /이미지 경로에 대한 PHP 일반 일치 방법 참조"'s]*)/i

使用kindeditor保存文章,需要取出第N个图片的地址作为文章的标志图片,文章代码(内容的html)保存到数据库一个字段,然后图片地址保存到另外一个字段。 上面的地址是直接获取img标签内src属性的值。在使用该正则的php页面访问该路径如果能找到图片的话,可以直接使用,如果不能,可以使用preg_match_all将所有地址先保存到数组,然后处理路径,比如获取文件名称(不含路径部分),然后重新组成url,再删除图片。

例子:

复制代码 代码示例: preg_match_all("/이미지 경로에 대한 PHP 일반 일치 방법 참조"'s]*)/i",str_ireplace("\","",$content),$arr);

内容部分被php给加上转义了,需要先把去除,str_ireplace("\","",$content),然后将匹配的内容保存到$arr数组(二维的). $arr[1]就是存储该路径的数组.

再谈php正则提取图片地址

参考之前的文章,小议php正则提取图片地址的方法,提取src=里面的图片地址还不足够,因为不能保证那个地址一定是绝对地址,完全的地址,如果那是相对的呢?如果地址诸如: albums/Candids/thumb_P1050338.jpg /content/media/touts/5271608/5271654/15320982 应该如何操作呢?

有时在这些地址前面需要加http://example1.com/ ,有些甚至要加http://example1.com/example2/.../,这太不现实了。

经过思索,原来:http://example.com/ 和http://example.com////// 是一样的! http://img3.jbxue.com/pics/nav/lg_main_a6.png 和 http://img3.jbxue.com////pics////nav///lg_main_a6.png 于是,对于一开始提到的两个相对地址如果要强行加入某前缀恢复成绝对地址的话,也不管前面有没有“/”,只管加一个“/”就好,“有杀错,没放过” 嘛,多一个显示仍会正常,但少一个“/”。



원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿