PHP 文章内容图片全部删除函数,content字段包含的图片全部删除函数。
/** * 删除文章内容的图片 * * Auther www.youhutong.com * @param content 内容 * @param includePath 图片链接包含的路径(要删除的) */ function delete_content_images($content, $includePath = []) { if(empty($content)) return true; #1、 定义两个数组(用来一会存内容中所有包含图片的链接数组和需要删除的图片数组) $matches = $result = []; #2、 先处理需要删除的图片(包含路径就是需要删除的)数组 $includePath = $includePath ? (array)$includePath : ['www.youhutong.com']; #3、 正则匹配出内容中所含的所有图片连接,并存到数组$matches中去。 $reg = '/((http|https):\/\/)+(\w+\.)+(\w+)[\w\/\.\-]*(jpg|gif|png|jpeg|bmp)/'; preg_match_all($reg, $content, $matches); #4、 1)遍历所有图片链接,然后再遍历我们自己定义要删除包含路径的数组 #4、 2)然后判断 --> 再处理图片完整路径 --> 得到可以删除的路径 foreach ($matches[0] as $image) { foreach($includePath as $path){ # 判断链接包含要删除的路径没有,当然判断条件自己可以变通的 if(strpos($image, $path) !== false){ # 处理图片链接得到需要删除图片的数据,并存到$result中去 ... ... ... ... ... ... ... } } } # 返回需要删除的图片数据 return $result; }
preg_match_all() 函数
说明:
函数用于进行正则表达式全局匹配,成功返回整个模式匹配的次数(可能为零),如果出错返回 FALSE 。
语法:
int preg_match_all( string pattern, string subject, array matches [, int flags ] )
参数 | 描述 |
---|---|
pattern | 正则表达式 |
subject | 需要匹配检索的对象 |
matches | 存储匹配结果的数组 |
flags | 可选,指定匹配结果放入 matches 中的顺序,可供选择的标记有:
|
strpos() 函数
说明:函数对大小写敏感。
查找字符串在另一字符串中第一次出现的位置,如果没有找到字符串则返回 FALSE。
语法:
strpos(string,find,start)
参数 | 描述 |
---|---|
string | 必需。规定要搜索的字符串。 |
find | 必需。规定要查找的字符串。 |
start | 可选。规定在何处开始搜索。 |
转载请注明来源地址:小川编程 » https://www.youhutong.com/index.php/article/index/175.html
1、本站发布的内容仅限用于学习和研究目的.请勿用于商业或非法用途,下载后请24小时内删除。
2、本站所有内容均不能保证其完整性,不能接受请勿购买或下载,如需完整程序,请去其官方购买正版使用
3、本站联系方式Email:admin@youhutong.com ,收到邮件会第一时间处理。
4、如侵犯到任何版权问题,请立即告知本站(立即在线告知),本站将及时删除并致以最深的歉意