• Welcome to Journal web site.

我是 PHP 程序员

- 开发无止境 -

Next
Prev

PHP用正则批量替换Img中src内容,用正则表达式获取图片路径实现缩略图功能_wuxiaopeng_1986的博客

Data: 2018-08-27 15:06:15Form: JournalClick: 8

PHP用正则批量替换Img中src内容,用正则表达式获取图片路径实现缩略图功能
PHP用正则批量替换Img中src内容,用正则表达式获取图片路径实现缩略图功能_wuxiaopeng_1986的博客-CSDN博客
PHP用正则批量替换Img中src内容,用正则表达式获取图片路径实现缩略图功能
网上很多正则表达式只能获取或者替换一个img的src内容,或者只能替换固定的字符串,要动态替换多个图片内容的试了几个小时才解决。
  1. /**
  2. * 图片地址替换成压缩URL
  3. * @param string $content 内容
  4. * @param string $suffix 后缀
  5. */
  6. function get_img_thumb_url($content="",$suffix="!c550x260.jpg")
  7. {
  8. // by http://www.manongjc.com/article/1319.html
  9. $pregRule = "/<[img|IMG].*?src=[\'|\"](.*?(?:[\.jpg|\.jpeg|\.png|\.gif|\.bmp]))[\'|\"].*?[\/]?>/";
  10. $content = preg_replace($pregRule, '<img src="${1}'.$suffix.'" style="max-width:100%">', $content);
  11. return $content;
  12. }
实例使用代码:
  1. //by http://www.manongjc.com
  2. $content = '<a href="#"><img class="center" src="https://xxx.com/styles/images/default.jpg"></a>'
  3. .'<p><img class="center" src="https://img.xxx.com/images/219_Ig5eZI.jpg" style="max-width: 100%;"></p>';
  4. $newct = get_img_thumb_url($content);
  5. 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>
Name:
<提交>