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


  • 2020-04-15 21:14:13

    .d.ts与.ts的区别 .d.ts怎么用

    在TypeScript项目中直接引入Javascript包是不能使用的,因为包中缺少TypeScript类型声明,如果是自己写的包,可以考虑自己增加一个.d.ts类型声明文件,如果代码比较多或者使用的是第三方的包,自己写就比较麻烦了。第三方的包首先考虑找一个别人写好的声明文件,如果没有可以使用一些自动生成声明文件的工具。

  • 2020-04-17 09:27:38

    推荐一个老前端开发者的博客

    前端修炼场,首页标签大全greenSock前端研究VUE研究我们的作品flash技术探讨开发心得个人档案培训与招聘服务报价

  • 2020-04-17 09:41:47

    前端css博客推荐

    这个博客有大量的css内容,有svg,TweenMax等教程,抽空通读一下

  • 2020-04-17 10:20:47

    GreenSocks Animation Platform详细工作机制以及TweenMax用法

    GSAP(GreenSocks Animation Platform)是一个性能较好的前端动画库。最近在写一个前端SVG动画编辑器时选择了它作为底层的动画库。为了减少踩坑,我大致浏览了它的源代码,这篇文章主要是对我的理解进行记录。 我会先简单介绍一下这个动画库的API,再介绍它的插件机制,最后会从一个用例出发跟踪其运行机制。

  • 2020-04-17 10:39:02

    CSS 滤镜技巧与细节,实现火焰,融合等特效

    简单来说,CSS 滤镜就是提供类似 PS 的图形特效,像模糊,锐化或元素变色等功能。通常被用于调整图片,背景和边界的渲染。本文就会围绕这些滤镜展开,看看具体能怎么使用或者玩出什么花活。

  • 2020-04-17 10:42:29

    (三)TweenMax运动效果

    运动效果 实例化对象.set() 立刻运动到指定地点,不用加时间

  • 2020-04-17 11:19:55

    Vue中的is和操作DOM

    vue中is的属性引入是为了解决dom结构中对放入html的元素有限制的问题,譬如ul里面要接上li的标签,引入is的属性后,你完全可以写成这样

  • 2020-04-17 11:27:48

    TweenMax中文初级教程一

    TweenMax.js集成了GreenSock动画平台的大部分核心功能,且具有极高的兼容性。

  • 2020-04-17 11:28:35

    TweenMax中文初级教程二

    TimelineMax是GreenSock 动画平台中的动画组织、排序、管理工具,可创建时间轴(timeline)作为动画或其他时间轴的容器,这使得整个动画控制和精确管理时间变得简单,避免了通过反复delay和回调进行动画。 作者:李霖弢 链接:https://www.jianshu.com/p/8c0361e43bf5 来源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。