使用preg_replace正则替换的同时对匹配的内容进行base64_encode()加密 20
functionimage_class_replace($content){$content=preg_replace('#<a(.*?)href="([^"]*/)?(...
function image_class_replace( $content ) {
$content = preg_replace( '#<a(.*?) href="([^"]*/)?(([^"/]*)\.[^"]*)"(.*?)>#',
'<a$1 href="$2$3""$5 target="_blank">', $content );
}
使用如上代码匹配网址替换 但我想把匹配到的网址先base64加密再进行替换,怎么搞!
function image_class_replace( $content ) {
$content = preg_replace( '#<a(.*?) href="([^"]*/)?(([^"/]*)\.[^"]*)"(.*?)>#',
'<a$1 href="//www.ccer.me/go/'.base64_encode('$2$3').'""$5 target="_blank">', $content );
}
这样貌似不可以 展开
$content = preg_replace( '#<a(.*?) href="([^"]*/)?(([^"/]*)\.[^"]*)"(.*?)>#',
'<a$1 href="$2$3""$5 target="_blank">', $content );
}
使用如上代码匹配网址替换 但我想把匹配到的网址先base64加密再进行替换,怎么搞!
function image_class_replace( $content ) {
$content = preg_replace( '#<a(.*?) href="([^"]*/)?(([^"/]*)\.[^"]*)"(.*?)>#',
'<a$1 href="//www.ccer.me/go/'.base64_encode('$2$3').'""$5 target="_blank">', $content );
}
这样貌似不可以 展开
1个回答
2017-08-12
展开全部
function image_class_replace( $content ) {
return preg_replace( '/(<a[^>]*href[=\"\']+)([^\"\']*)([\"\']?[^>]*)>/i',
'$1'.base64_encode('$2').'$3 target="_blank">', $content );
}
$content = "<a href='abc.html'>sdfsdf</a>";
$content = image_class_replace( $content );
echo $content;
追问
能否在函数里直接加密,不使用return返回数据,因为这个函数结束后还要返回一些数据,这里返回的话就冲突了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询