欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

html - PHP正则给img添加连接并设置连接的值

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

回复内容:

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

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

// $desc 你的富文本数据
$replace = preg_replace('/]*?src\s*=\s*('|\")(.*?)\1[^>]*?\/?\s*>/i', '$0', $desc);

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

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

$('body').on('click', 'img', function(){
    location.href = $(this).attr('src');
});