当使用字符串插值,sprintf或者通常以任何形式动态创建SQL查询字符串时,PhpStorm通常会跳闸.例如:
$placeholders = join(', ', array_fill(0, count($ids), '?'));
$stmt = $db->prepare("SELECT * FROM foo WHERE bar IN ($placeholders)");
$stmt->execute($ids);
Run Code Online (Sandbox Code Playgroud)
要么:
$db->prepare(sprintf('INSERT .. (%s) ..', $foo))
Run Code Online (Sandbox Code Playgroud)
这些可以理解地在PhpStorm中触发某种SQL语法错误警告.有没有办法在没有彻底禁用SQL语言解析的情况下压制那些?
小智 7
我从Jetbrains博客找到了这个问题的明确答案:
http://blog.jetbrains.com/phpstorm/2014/11/database-language-injection-configuration/
你需要添加\%\w+.在您的工具>数据库部分中.