能不能匹配 再放回去、
<a href="www.baidu.com">百度一下</a>
<a href="index.php?xxxx">首页</a>
<a href="list.php?xxxxxx">11111</a>
<a href="view.php?xxxx">222222</a>效果这样 把href="xxxxx" 用 base64_encode 加密<a href="d3d3LmJhaWR1LmNvbQ==">百度一下</a>
<a href="aW5kZXgucGhwP3h4eHg=">首页</a>
<a href="bGlzdC5waHA/eHh4eHh4">11111</a>
<a href="dmlldy5waHA/eHh4eA==">222222</a>
<a href="www.baidu.com">百度一下</a>
<a href="index.php?xxxx">首页</a>
<a href="list.php?xxxxxx">11111</a>
<a href="view.php?xxxx">222222</a>效果这样 把href="xxxxx" 用 base64_encode 加密<a href="d3d3LmJhaWR1LmNvbQ==">百度一下</a>
<a href="aW5kZXgucGhwP3h4eHg=">首页</a>
<a href="bGlzdC5waHA/eHh4eHh4">11111</a>
<a href="dmlldy5waHA/eHh4eA==">222222</a>
$str = <<<HTML
<a href="www.baidu.com">百度一下</a>
<a href="index.php?xxxx">首页</a>
<a href="list.php?xxxxxx">11111</a>
<a href="view.php?xxxx">222222</a>
HTML;
$res = preg_replace('/"(.*?)"/es', 'base64_encode("\\1")', $str);
echo $res;
//凌晨五点就不要等了,没人
$str = <<<HTML
<a href="www.baidu.com">百度一下</a>
<a href="index.php?xxxx">首页</a>
<a href="list.php?xxxxxx">11111</a>
<a href="view.php?xxxx">222222</a>
HTML;
$res = preg_replace('/"([^"]*?)"/es', 'base64_encode("$1")', $str);
echo $res;
$res = preg_replace('/"(.*?)"/e', '"\"".base64_encode("\\1")."\""', $str);//结果中都忘了加回双引号了,参照LZ的答案,encode目标是www.baidu.com
<a href="里面的内容">
如果匹配"" 所有""的全部都加密了!