Konwertuj anonimową funkcję w PHP 5.3 na odpowiednik PHP 5.2
Mam błąd w wierszach 2 i 13 w PHP 5.2, nie mam pojęcia, jak dokonać korekty, próbowałem użyć funkcji create_function, ale nie działa, czy ktoś może w tym pomóc?
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;
}
Dzięki.
Błąd: Błąd analizy: błąd składni, nieoczekiwane T_FUNCTION