>백엔드 개발 >PHP 튜토리얼 >정규식을 기반으로 Img의 src 내용을 일괄 교체하여 PHP를 사용하여 썸네일을 얻는 기능 코드에 대한 자세한 설명

정규식을 기반으로 Img의 src 내용을 일괄 교체하여 PHP를 사용하여 썸네일을 얻는 기능 코드에 대한 자세한 설명

怪我咯
怪我咯원래의
2017-06-16 10:36:471430검색

这篇文章主要介绍了PHP基于正则批量替换Img中src内容实现获取缩略图的功能,涉及php针对页面img元素的正则匹配与替换操作相关实现技巧,需要的朋友可以参考下

本文实例讲述了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=[\&#39;|\"](.*?(?:[\.jpg|\.jpeg|\.png|\.gif|\.bmp]))[\&#39;|\"].*?[\/]?>/";
$content = preg_replace($pregRule, &#39;<img src="${1}&#39;.$suffix.&#39;" style="max-width:100%">&#39;, $content);
return $content;
}

实例使用代码:

$content = &#39;<a href="#" rel="external nofollow" rel="external nofollow" ><img class="center" src="https://xxx.com/styles/images/default.jpg"></a>&#39;
.&#39;<p><img class="center" src="https://img.xxx.com/images/219_Ig5eZI.jpg" style="max-width: 100%;"></p>&#39;;
$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>


위 내용은 정규식을 기반으로 Img의 src 내용을 일괄 교체하여 PHP를 사용하여 썸네일을 얻는 기능 코드에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.