PHP正则提取字符串中所有图片,并替换!

2021-02-12 15:10:38


参考地址 PHP正则提取字符串中所有图片,并替换!

<?php
$preg = '/<img.*?src=[\"|\']?(.*?)[\"|\']*?\/?\s*>/i';//匹配img标签的正则表达式
$preg2 = '/background-image:[ ]?url\(&quot;[\'"]?(.*?\.(?:png|jpg|jpeg|gif))/i';//匹配背景的url的正则表达式
 
$value = '<div style="background-image: url(&quot;http://www.google.com/1.jpg?param=12&test=2&quot;)"><img src="http://www.google.com/2.jpg"></div>';
preg_match_all($preg, $value, $allImg);//这里匹配所有的img
preg_match_all($preg2, $value, $allImg2);//这里匹配所有的背景img
 
$imgList = array_merge($allImg[1],$allImg2[1]);
 
if (empty($imgList)){
    return false;
}
 
$imgList = array_unique($imgList);
$newImgList = [];
 
$flag = false;
foreach ($imgList as $key=>$img_url){
    echo $img_url.PHP_EOL;
    print_r("第{$key}张图片...".PHP_EOL);
    $newImgList[] = $img_url.'[更新标志]';
}
 
print_r('所有图片循环处理完毕!'.PHP_EOL);
 
echo str_replace($imgList,$newImgList,$value);


  • 2017-02-09 09:02:26

    两列布局——左侧宽度固定,右侧宽度自适应的两种方法

     关于左侧宽度固定,右侧宽度自适应两列布局的一种很常用的方法我相信大家都知道。就是利用左侧元素浮动,或者绝对定位的方式使其脱离常规文档流,让两个块级元素能够在同一行显示。然后右侧元素 margin-left 的值等于左侧元素宽度,这时右侧元素将紧挨着左侧元素

  • 2017-02-10 15:19:51

    Git:代码冲突常见解决方法

    如果系统中有一些配置文件在服务器上做了配置修改,然后后续开发又新添加一些配置项的时候, 在发布这个配置文件的时候,会发生代码冲突:

  • 2017-02-10 15:24:14

    linux学习之——vim简明教程

    学习 vim 并且其会成为你最后一个使用的文本编辑器。没有比这个更好的文本编辑器了,非常地难学,但是却不可思议地好用。 我建议下面这四个步骤: 存活 感觉良好 觉得更好,更强,更快 使用VIM的超能力

  • 2017-02-10 16:22:13

    git历史记录查询

    查看提交历史:git log 查看提交历史并显示版本间的差异:git log -p 查看指定历史:git log xxx(sha1值) -p 查看提交历史(指定时间):