3v4l.org

run code in 300+ PHP versions simultaneously
<?php function replace_not_entities($search, $replace, $subject) { return preg_replace_callback('/&[^;]+;|(' . preg_quote($search) . ')/', $subject, function($match) use($replace) { return isset($match[1]) ? $replace : $match[0]; }); } print replace_not_entities('um', '__', 'R&auml;ume');

preferences:
43.25 ms | 402 KiB | 5 Q