php的 preg_replace 只能匹配并替换值,不能对匹配到的字符串进行处理并返回。
preg_replace_callback 则完美的 做到这一点
function Html_Face($html) {//替换标签
//html="我是方脸<ef0024ef>自卑,我是方脸<ef0024ef>自信点<ef0008ef>";
$preg = '/<([0-9a-z]+)>/i';
$html= preg_replace_callback($preg, function ($matcher){ return Face($matcher[1]); },$html);
return $html;
}
标记一下 以后可能用的到