3v4l.org

run code in 300+ PHP versions simultaneously
<?php function dumpParameter($r){ return 'PAR'.$r.'AM'; } function t($value){ if (preg_match('/^%([^%]+)%$/', $value, $match)) { // we do this to deal with non string values (Boolean, integer, ...) // the preg_replace_callback converts them to strings return dumpParameter(strtolower($match[1])); } else { $replaceParameters = function ($match){ return "'.".dumpParameter(strtolower($match[2])).".'"; }; $code = str_replace('%%', '%', preg_replace_callback('/(?<!%)(%)([^%]+)\1/', $replaceParameters, var_export($value, true))); return $code; } } echo t('%ddd%dre');

preferences:
32.86 ms | 402 KiB | 5 Q