ホームページ  >  記事  >  バックエンド開発  >  PHPを使用してImgのsrc内容を正規表現に基づいて一括置換してサムネイルを取得する機能コードの詳細説明

PHPを使用してImgのsrc内容を正規表現に基づいて一括置換してサムネイルを取得する機能コードの詳細説明

怪我咯
怪我咯オリジナル
2017-06-16 10:36:471408ブラウズ

这篇文章主要介绍了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>


以上がPHPを使用してImgのsrc内容を正規表現に基づいて一括置換してサムネイルを取得する機能コードの詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。