PHP用正则批量替换Img中src内容,用正则表达式获取图片路径实现缩略图功能
Posted qcjdp
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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="#"><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="#"><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用正则批量替换Img中src内容,用正则表达式获取图片路径实现缩略图功能的主要内容,如果未能解决你的问题,请参考以下文章
js正则匹配替代指定字符(根据img标签的src中的命名规则,用正则表达式替换成下面格式的文字)
js正则匹配替代指定字符(根据img标签的src中的命名规则,用正则表达式替换成下面格式的文字)