我数据库里面的富文本数据,就是那种带格式的文章里面包括html标签,现在我就想把这个富文本里面的数据都遍历一下给里面所有的img添加上超链接,然后超链接的连接地址直接设置成img的图片地址,超链接里面还有对应的class样式也得设置上。有没有好的替换方法,求教各位大神
我数据库里面的富文本数据,就是那种带格式的文章里面包括html标签,现在我就想把这个富文本里面的数据都遍历一下给里面所有的img添加上超链接,然后超链接的连接地址直接设置成img的图片地址,超链接里面还有对应的class样式也得设置上。有没有好的替换方法,求教各位大神
可以使用正则,如楼上所说用preg_replace()
函数即可。参考替换如下
<code>// $desc 你的富文本数据 $replace = preg_replace('/<\s*img\s+[^>]*?src\s*=\s*('|\")(.*?)\1[^>]*?\/?\s*>/i', '<a class="你要引用的样式" href="$2">$0</a>', $desc);</code>
你可以使用php
的preg_replace()
函数用正则替换啊
除了LS的用正则表达式的方式来搞之外。如果需求只是要让用户点击图片的时候跳转查看大图/原图的话,为啥不用js来做呢? 很简单的代码就可以搞定,而且不用在服务端来搞:
<code>$('body').on('click', 'img', function(){ location.href = $(this).attr('src'); });</code>