5
$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() ?

memmedimanli
  • 87
  • 1
  • 1
  • 9

2 Answers2

8

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);
Rob M.
  • 33,381
  • 6
  • 50
  • 46
3
$source = preg_replace_callback
(
    '/\&\#(\d+)\;/m',
    function($match){
        return utf8_encode(chr($match[1]));
    },
    $source
);
Deadooshka
  • 488
  • 6
  • 8