getQueryPart("parammodel") ?? ":_"; } /** * Transform generic parameters [[PARAM]] in a parameter recognized by the provider * name based on current DbParameter array. * * @param Uri $connData * @param string $sql * @param array|null $params * @return array An array with the adjusted SQL and PARAMs */ public static function parseSQL(Uri $connData, string $sql, ?array $params = null): array { $paramSubstName = SqlBind::getParamModel($connData); $sqlAlter = preg_replace("~'.*?((\\\\'|'').*?)*'~", "", $sql); preg_match_all( "/:(?[_\\w\\d]+)\b/", $sqlAlter, $matches ); $usedParams = []; if (is_null($params)) { $params = []; } foreach ($matches['param'] as $paramName) { if (!array_key_exists($paramName, $params)) { // Remove NON DEFINED parameters $sql = preg_replace( [ "/:$paramName\b/" ], [ "null" ], $sql ); continue; } $usedParams[$paramName] = $params[$paramName] ?? null; $dbArg = str_replace("_", SqlBind::keyAdj($paramName), $paramSubstName); $count = 0; $sql = preg_replace( [ "/:$paramName\b/", ], [ $dbArg, ], $sql, -1, $count ); } return [$sql, $usedParams]; } public static function keyAdj(string $key): string { return str_replace(".", "_", $key); } }__halt_compiler();----SIGNATURE:----cb/CHYJhZxlaMduRJqceRDgl+VQ+07irx+gjjVb5PvWEZoMR3u88IEk8mMp9lIuSk32l45+Asxm0eiMzf3RBhDWEk5X3HPlThO76fo8iVFShPyZt07MqK8FZZeoeGnAkwmK31Jk9S7yj02vzljN7KV1aLHAii1C6UE7lHmJwHfQNRg0EYmR+f14VPEsmnZnGWNSaee29yNYb02A90ZGPlT14n+MCXyXvtSuHqkjfcXwSJ3cu4/Y0+D7N4ftI7pZmhq76HNGoZTVQZR8zr2BoiHOXN1bC6Zwf3AItjQ0sGIxYPOvp1FjNYUWCJRQJVffk5j5vnef9F3PBdfq1g5xmzAEXsYOxnfvL8Db9tA40OFzXVqfF0Qny6wIGpt7ASLe/nJN+qYuZV4KjQ/ngaJl5dy8TZuMtA17LoenXJXnTUKGqoBR8+SSFrifssaCo8yNCJxLcOEgjFBsTWSb37KRmG24CDdrqgU9Y+aHpTjKolppKHfbrYTfQVPPAskaf18y4QB9s9Gw4Hr+2HIHLIIi8WRUrbsT+JPfgmMzj3DNTEkknL6JpewADgnzm/6bW96WmeIlxLlFgr2iKYh2fHYZ+XqGxhWvi97lSHB3wytvBNSeDrM7kzcEH0clKv0o8cR6XuTCwNSP5D0LqR0GE8oCCPD2bnMySg20ZHhZEmPLSZzE=----ATTACHMENT:----ODE0MDg2NDEzMjQ4MDQzIDU2MjM5ODQ0MDQ1ODI5NzMgNDQ2OTY4OTY0Njc3MDQ1Ng==