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 相关文章推荐
一些 PHP 管理系统程序中的后门
Aug 05 PHP
PHP 命名空间实例说明
Jan 27 PHP
php float不四舍五入截取浮点型字符串方法总结
Oct 28 PHP
php二维数组用键名分组相加实例函数
Nov 06 PHP
phpmyadmin出现Cannot start session without errors问题解决方法
Aug 14 PHP
smarty表格换行实例
Dec 15 PHP
PHP用mb_string函数库处理与windows相关中文字符及Win环境下开启PHP Mb_String方法
Nov 11 PHP
WordPress中Gravatar头像缓存到本地及相关优化的技巧
Dec 19 PHP
php注册和登录界面的实现案例(推荐)
Oct 24 PHP
PHP实现的mysql读写分离操作示例
May 22 PHP
stripos函数知识点实例分享
Feb 11 PHP
PHP检测一个数组有没有定义的方法步骤
Jul 20 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
php array_unique之后json_encode需要注意
2011/01/02 PHP
深入了解PHP类Class的概念
2012/06/14 PHP
php中分页及SqlHelper类用法实例
2017/01/12 PHP
基于PHP常用文件函数和目录函数整理
2017/08/17 PHP
用JS实现一个页面多个css样式实现
2008/05/29 Javascript
javascript 关于# 和 void的区别分析
2009/10/26 Javascript
基于jquery+thickbox仿校内登录注册框
2010/06/07 Javascript
jquery.pagination.js 无刷新分页实现步骤分享
2012/05/23 Javascript
nodejs的10个性能优化技巧
2014/07/15 NodeJs
javascript 中的事件委托详解
2016/10/25 Javascript
微信小程序开发之大转盘 仿天猫超市抽奖实例
2016/12/08 Javascript
详解如何写出一个利于扩展的vue路由配置
2019/05/16 Javascript
微信小程序云函数使用mysql数据库过程详解
2019/08/07 Javascript
js实现简单掷骰子小游戏
2019/10/24 Javascript
js实现金山打字通小游戏
2020/07/24 Javascript
基python实现多线程网页爬虫
2015/09/06 Python
Python生成随机密码的方法
2017/06/16 Python
python学生管理系统代码实现
2020/04/05 Python
Python(TensorFlow框架)实现手写数字识别系统的方法
2018/05/29 Python
Python读取Excel表格,并同时画折线图和柱状图的方法
2018/10/14 Python
python 实现查询Neo4j多节点的多层关系
2019/12/23 Python
Python装饰器实现方法及应用场景详解
2020/03/26 Python
python 多线程中join()的作用
2020/10/29 Python
Python实现FTP文件定时自动下载的步骤
2020/12/19 Python
英国排名第一的在线宠物用品商店:Monster Pet Supplies
2018/05/20 全球购物
ajax是什么及其工作原理
2012/02/08 面试题
计算机个人求职信范例
2014/01/24 职场文书
婚礼答谢宴主持词
2014/03/14 职场文书
工作说明书范文
2014/05/07 职场文书
商务专员岗位职责范本
2014/06/29 职场文书
学校党委干部个人对照检查材料思想汇报
2014/10/09 职场文书
后进基层党组织整改方案
2014/10/25 职场文书
储备店长岗位职责
2015/04/14 职场文书
简短的36句中秋节祝福信息语句
2019/09/09 职场文书
基于MySql验证的vsftpd虚拟用户
2021/11/07 MySQL
MySQL数据库事务的四大特性
2022/04/20 MySQL