php中使用preg_replace函数匹配图片并加上链接的方法

yipeiwu_com6年前PHP代码库

介绍:preg_replace 执行正则表达式的搜索和替换,如果只是单纯的匹配字符串建议使用str_replace(),因为其执行效率高的多。
mixed preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit])

     在 subject 中搜索 pattern 模式的匹配项并替换为 replacement。如果指定了 limit,则仅替换 limit 个匹配,如果省略 limit 或者其值为 -1,则所有的匹配项都会被替换。

     参照之前说过的 php用preg_match_all匹配文章中的图片 ,下面给出匹配图片并加上链接的代码:

复制代码 代码如下:

<?php
$con = file_get_contents("//www.jb51.net/");
$pattern="/<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg|\.png]))[\'|\"].*?[\/]?>/";
$new_con = preg_replace($pattern,"<a href='$1'>$0</a>",$con);
echo $new_con;
?>

说明:$0表示这个匹配内容,$1表示第一个()匹配的内容 $2表示第二个()匹配的内容,以此类推!
这样就给图片加上链接了,感兴趣的朋友不妨自己动手测试下哦。

相关文章

用穿越火线快速入门php面向对象

复制代码 代码如下: <?php /* *用穿越火线快速入门php面向对象! *php目前已经成为国内的主流web developer的首选开发语言,其强大的面向对象容易使初学者找...

PHP技术开发技巧分享

1. 提高PHP的运行效率   PHP的优点之一是速度很快,对于一般的网站应用,可以说是已经足够了。不过如果站点的访问量很高、带宽窄或者其它的因素令服务器产生性能瓶颈的时候,你可能得想想...

PHP实现15位身份证号转18位的方法分析

本文实例讲述了PHP实现15位身份证号转18位的方法。分享给大家供大家参考,具体如下:第一代身份证:15位身份证号码的意义1-2位省、自治区、直辖市代码; 3-4位地级市、盟、自治州代码;...

golang与php实现计算两个经纬度之间距离的方法

本文实例讲述了golang与php实现计算两个经纬度之间距离的方法。分享给大家供大家参考,具体如下: golang版本: 复制代码 代码如下:package main import (...

php缩放gif和png图透明背景变成黑色的解决方法

工作中需要缩放一些gif图然后在去Imagecopymerge,可是发现使用了imagecreatetruecolor和imagecopyresampled后发现背景图不对,本来透明的背...