Converter função anônima no PHP 5.3 no equivalente do PHP 5.2
Eu tenho erro na linha 2 e 13 no PHP 5.2, não tenho ideia de fazer a correção, tentei usar create_function mas não funciona, alguém pode ajudar com isso?
<code>function _process_special_keyword($str){ $callback = function($match){ $ret = $match[1] . '[' . $match[2] . ']'; if(!empty($match[3])){ $ret .= '.[' . $match[3] . ']'; } $ret .= $match[4]; return $ret; }; $strSQL = preg_replace_callback('/([\s\(\.,])(' . SPECIAL_KEYWORDS . ')(?:\.(' . SPECIAL_KEYWORDS . '))?([\s\)\.,])/i', $callback, $str); $callback = function($match){ return 'CASE WHEN ' . $match[1] . ' THEN ' . $match[2] . ' ELSE ' . $match[3] . ' END'; }; $strSQL = preg_replace_callback('/if\s*\((.+),(.+),(.+)\)/i', $callback, $strSQL); return $strSQL; } </code>
Obrigado.
Erro: Erro de análise: erro de sintaxe, T_FUNCTION inesperado