Search code examples
phppreg-replacepreg-replace-callback

Replace preg_replace() to preg_replace_callback()


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

The above code gives deprecated warning.

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in 

How can I replace preg_replace() to preg_replace_callback() ?


Solution

  • Read the documentation here, http://www.php.net/manual/en/function.preg-replace-callback.php

    Here is an example of preg_replace_callback

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