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程序的方法
Mar 09 PHP
php设计模式 State (状态模式)
Jun 26 PHP
php中用foreach来操作数组的代码
Jul 17 PHP
php数组函数序列之array_combine() - 数组合并函数使用说明
Oct 29 PHP
php中的一些数组排序方法分享
Jul 20 PHP
PHP页面中文乱码分析
Oct 29 PHP
php中异常处理方法小结
Jan 09 PHP
浅谈php中curl、fsockopen的应用
Dec 10 PHP
PHP实现合并两个排序链表的方法
Jan 19 PHP
php 读写json文件及修改json的方法
Mar 07 PHP
Yii2 中实现单点登录的方法
Mar 09 PHP
PHP信号处理机制的操作代码讲解
Apr 19 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
农民C键的运用技巧
2020/03/04 星际争霸
PHP5.4中json_encode中文转码的变化小结
2013/01/30 PHP
PHP has encountered a Stack overflow问题解决方法
2014/11/03 PHP
PHP中strcmp()和strcasecmp()函数字符串比较用法分析
2016/01/07 PHP
封装好的省市地区联动控件附下载
2007/08/13 Javascript
IE本地存储userdata的一个bug说明
2010/07/01 Javascript
让AJAX不依赖后端接口实现方案
2012/12/03 Javascript
ExtJS[Desktop]实现图标换行示例代码
2013/11/17 Javascript
JS小功能(offsetLeft实现图片滚动效果)实例代码
2013/11/28 Javascript
理解Javascript文件动态加载
2016/01/29 Javascript
全面解析Bootstrap中Carousel轮播的使用方法
2016/06/13 Javascript
js实现无缝滚动图(可控制当前滚动的方向)
2017/02/22 Javascript
使用JavaScriptCore实现OC和JS交互详解
2017/03/28 Javascript
Angular中自定义Debounce Click指令防止重复点击
2017/07/26 Javascript
解决npm管理员身份install时出现权限的问题
2018/03/16 Javascript
Vue 实现分页与输入框关键字筛选功能
2020/01/02 Javascript
一篇文章入门Python生态系统(Python新手入门指导)
2015/12/11 Python
快速实现基于Python的微信聊天机器人示例代码
2017/03/03 Python
python 调用win32pai 操作cmd的方法
2017/05/28 Python
python数据结构之链表的实例讲解
2017/07/25 Python
Python实现识别手写数字 简易图片存储管理系统
2018/01/29 Python
python清除函数占用的内存方法
2018/06/25 Python
python数据处理之如何选取csv文件中某几行的数据
2019/09/02 Python
Windows系统下pycharm中的pip换源
2020/02/23 Python
python实现将两个文件夹合并至另一个文件夹(制作数据集)
2020/04/03 Python
翻新二手苹果产品的网络领导者:Mac of all Trades
2017/12/19 全球购物
Anya Hindmarch官网:奢侈设计师手袋及配饰
2018/11/15 全球购物
size?荷兰官方网站:英国高级运动鞋精品店
2020/07/24 全球购物
外贸实习生自荐信范文
2013/11/24 职场文书
党的群众路线教育实践活动批评与自我批评
2014/02/16 职场文书
材料员岗位职责
2015/02/10 职场文书
公务员保密工作承诺书
2015/05/04 职场文书
逃课检讨书范文
2015/05/06 职场文书
使用Oracle跟踪文件的问题详解
2021/06/28 Oracle
解决Mysql的left join无效及使用的注意事项说明
2021/07/01 MySQL
vue+echarts实现多条折线图
2022/03/21 Vue.js