将preg_replace()替换为preg_replace_callback()

mem*_*nli 4 php preg-replace preg-replace-callback

$source = preg_replace('/&#(\d+);/me', "utf8_encode(chr(\\1))", $source);
Run Code Online (Sandbox Code Playgroud)

上面的代码给出了不建议使用的警告。

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in 
Run Code Online (Sandbox Code Playgroud)

如何将preg_replace()替换为preg_replace_callback()?

Rob*_* M. 7

在此处阅读文档,http://www.php.net/manual/en/function.preg-replace-callback.php

这是preg_replace_callback的示例

$source = preg_replace_callback('/&#(\d+);/m', function($matches){
   return utf8_encode(chr($matches[1]));
}, $source);
Run Code Online (Sandbox Code Playgroud)