我用preg_replace_callback 替换含有中文的字符串,返回的所有匹配的结果集没有出现乱码,第一个子结果集出现了乱码。用过转码也不行。
这是我的源代码
header('content-type:text/html;charset=utf-8');
$template='您好,欢迎注册[ce2],您的验证[fong1]码为{value},重复一次,验证码为{value},谢谢。';
$template='册[ce2]';
$template=preg_replace_callback('/(S){3}[(.*?)]/',function ($match) use ($template){
var_dump($match);
},$template);
$template=preg_replace_callback('/([\x{4e00}-\x{9fa5}]\[(.*)\])/u',function ($match) use
($template){
var_dump($match);
},$template);