php preg_replace 乱码问题

仍是用网站建设代码来讲话吧:并发

$pattern = "/ (href|src)=['|\"]http:\/\/(\w*\.?mysite\.com)\/([^\?'\"]*)['|\"]/i";

$repl = " \1='http://\2/\3?p=faskdfkasdkf'";

$result="<a href='http://eg.mysite.com/'>中国人</a>";
$result = preg_replace($pattern, $repl, $result);
echo $result;测试

上面这段代码的做用,我就不解释了,能够本身执行一下。网站

执行后你会发现出现有乱码,通过查资料发现是$repl写错了,应该用\\来作代替位置,正确格式以下:blog

$repl = " \\1='http://\\2/\\3?p=faskdfkasdkf'";内存

还有一点必定要注意:mb_ereg_replace 在并发状况下会内存泄露,形成压力测试没法经过。(fblww-0305)get

相关文章
相关标签/搜索