php preg_replace 乱码有关问题

WBOY
リリース: 2016-06-13 10:54:36
オリジナル
1202 人が閲覧しました

php preg_replace 乱码问题

还是用代码来说话吧:

?

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

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

$result="中国人";
$result = preg_replace($pattern, $repl, $result);
echo $result;

?

上面这段代码的作用,我就不解释了,可以自己执行一下。

?

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

?

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

?

还有一点一定要注意:mb_ereg_replace 在并发情况下会内存泄露,造成压力测试无法通过。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート