<?php
sqlTemplate("{{1}} {[2]} {{3: BLABLABLA}}",array(null,"HELLO",array(1,323,452),true));
function sqlTemplate($query,$vars){
$replace = function($matches) use ($vars) {
$varName = trim($matches[2]);
if(count($matches)==5{
return isset($vars[$varName])&&$vars[$varName]?$matches[4]:"";
}else if($matches[1] == '['){
return implode(',',$vars[$varName]);
}else if($matches[1] == '{'){
return $vars[$varName];
}else{
return $matches[0];
}
};
return preg_replace_callback('~\{([\[\{])([a-z0-9\_\-]+)(\:([^\}]*))?[\]\}]\}~i',$replace, $query);
}
- Output for 5.3.0 - 5.3.27, 5.4.0 - 5.4.22
- Parse error: syntax error, unexpected '{' in /in/aHc9p on line 8
Process exited with code 255.
preferences:
195.16 ms | 1395 KiB | 58 Q