PHP基于正则批量替换Img中src内容实现获取缩略图的功能示例


Posted in PHP onJune 07, 2017

本文实例讲述了PHP基于正则批量替换Img中src内容实现获取缩略图的功能。分享给大家供大家参考,具体如下:

这里PHP用正则批量替换Img中src内容,实现获取图片路径缩略图的功能

网上很多正则表达式只能获取或者替换一个img的src内容,或者只能替换固定的字符串,要动态替换多个图片内容的试了几个小时才解决。

/**
* 图片地址替换成压缩URL
* @param string $content 内容
* @param string $suffix 后缀
*/
function get_img_thumb_url($content="",$suffix="!c550x260.jpg")
{
$pregRule = "/<[img|IMG].*?src=[\'|\"](.*?(?:[\.jpg|\.jpeg|\.png|\.gif|\.bmp]))[\'|\"].*?[\/]?>/";
$content = preg_replace($pregRule, '<img src="${1}'.$suffix.'" style="max-width:100%">', $content);
return $content;
}

实例使用代码:

$content = '<a href="#" rel="external nofollow" rel="external nofollow" ><img class="center" src="https://xxx.com/styles/images/default.jpg"></a>'
.'<p><img class="center" src="https://img.xxx.com/images/219_Ig5eZI.jpg" style="max-width: 100%;"></p>';
$newct = get_img_thumb_url($content);
print_r($newct);

输出结果:

<a href="#" rel="external nofollow" rel="external nofollow" ><img src="https://xxx.com/styles/images/default.jpg!c550x260.jpg" style="max-width:100%"></a><p><img src="https://img.xxx.com/images/219_Ig5eZI.jpg!c550x260.jpg" style="max-width:100%"></p>
PHP 相关文章推荐
解析linux下安装memcacheq(mcq)全过程笔记
Jun 27 PHP
php查找任何页面上的所有链接的方法
Dec 03 PHP
php小技巧之过滤ascii控制字符
May 14 PHP
qq登录,新浪微博登录接口申请过程中遇到的问题
Jul 22 PHP
php防止伪造数据从地址栏URL提交的方法
Aug 24 PHP
初识PHP
Sep 28 PHP
php实现连接access数据库并转txt写入的方法
Feb 08 PHP
完美解决Thinkphp3.2中插入相同数据的问题
Aug 01 PHP
PHP中abstract(抽象)、final(最终)和static(静态)原理与用法详解
Jun 05 PHP
关于PHP中interface的用处详解
Jul 26 PHP
php redis setnx分布式锁简单原理解析
Oct 23 PHP
php png失真的原因及解决办法
Oct 24 PHP
PHP框架laravel的.env文件配置教程
Jun 07 #PHP
理清PHP在Linxu下执行时的文件权限方法
Jun 07 #PHP
Laravel如何友好的修改.env配置文件详解
Jun 07 #PHP
PHP面向对象之事务脚本模式(详解)
Jun 07 #PHP
PHP框架自动加载类文件原理详解
Jun 06 #PHP
Yii输入正确验证码却验证失败的解决方法
Jun 06 #PHP
Yii 2.0在Grid中格式化时间方法示例
Jun 06 #PHP
You might like
老机欣赏|中国60年代精品收音机
2021/03/02 无线电
destoon调用discuz论坛中带图片帖子的实现方法
2014/08/21 PHP
PHP 实现判断用户是否手机访问
2015/01/21 PHP
jquery插件珍藏(图片局部放大/信息提示框)
2013/01/08 Javascript
Jquery通过Ajax方式来提交Form表单的具体实现
2013/11/07 Javascript
多个jquery.datatable共存,checkbox全选异常的快速解决方法
2013/12/10 Javascript
javascript作用域问题实例分析
2015/07/13 Javascript
jQuery实现鼠标经过弹出提示信息的地图热点效果
2015/08/07 Javascript
使用NodeJs 开发微信公众号(三)微信事件交互实例
2016/03/02 NodeJs
JavaScript编写Chrome扩展实现与浏览器的交互及时间通知
2016/05/16 Javascript
Angularjs CURD 详解及实例代码
2016/09/14 Javascript
详解js获取video任意时间的画面截图
2019/04/17 Javascript
原生JavaScript实现日历功能代码实例(无引用Jq)
2019/09/23 Javascript
jquery实现垂直手风琴导航栏
2020/02/18 jQuery
微信小程序自定义底部弹出框动画
2020/11/18 Javascript
[02:38]DOTA2亚洲邀请赛 IG战队巡礼
2015/02/03 DOTA
[53:29]完美世界DOTA2联赛循环赛 DM vs Matador BO2第二场 11.04
2020/11/05 DOTA
使用Python脚本将绝对url替换为相对url的教程
2015/04/24 Python
wxPython使用系统剪切板的方法
2015/06/16 Python
Python if语句知识点用法总结
2018/06/10 Python
python远程连接服务器MySQL数据库
2018/07/02 Python
pyqt5的QWebEngineView 使用模板的方法
2018/08/18 Python
Python threading.local代码实例及原理解析
2020/03/16 Python
Pyside2中嵌入Matplotlib的绘图的实现
2021/02/22 Python
使用HTML5做个画图板的方法介绍
2013/05/03 HTML / CSS
美国学校校服,儿童和婴儿服装:Cookie’s Kids
2016/10/14 全球购物
美国婴童服装市场上的领先品牌:Carter’s
2018/02/08 全球购物
简历中个人自我评价范文
2013/12/26 职场文书
乡镇干部先进事迹材料
2014/02/03 职场文书
个人工作表现评语
2014/04/30 职场文书
优质服务口号
2014/06/11 职场文书
大学迎新标语
2014/06/26 职场文书
2016年小学生清明节广播稿
2015/12/17 职场文书
25句企业管理语录:助你迅速打开思路,句句经典!
2020/01/14 职场文书
java设计模式--建造者模式详解
2021/07/21 Java/Android
Win11 S Mode版本泄露 正式上线后叫做Windows 11 SE
2021/11/21 数码科技