html - PHP正则给img添加连接并设置连接的值
PHP中文网
PHP中文网 2017-04-11 09:54:55
[PHP讨论组]

我数据库里面的富文本数据,就是那种带格式的文章里面包括html标签,现在我就想把这个富文本里面的数据都遍历一下给里面所有的img添加上超链接,然后超链接的连接地址直接设置成img的图片地址,超链接里面还有对应的class样式也得设置上。有没有好的替换方法,求教各位大神

PHP中文网
PHP中文网

认证0级讲师

全部回复(3)
ringa_lee

可以使用正则,如楼上所说用preg_replace()函数即可。参考替换如下

// $desc 你的富文本数据
$replace = preg_replace('/<\s*img\s+[^>]*?src\s*=\s*('|\")(.*?)\1[^>]*?\/?\s*>/i', '<a class="你要引用的样式" href="$2">$0</a>', $desc);
天蓬老师

你可以使用phppreg_replace()函数用正则替换啊

阿神

除了LS的用正则表达式的方式来搞之外。如果需求只是要让用户点击图片的时候跳转查看大图/原图的话,为啥不用js来做呢? 很简单的代码就可以搞定,而且不用在服务端来搞:

$('body').on('click', 'img', function(){
    location.href = $(this).attr('src');
});
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号