如何在phpstorm中禁用高亮显示SQL代码? 我曾禁用所有sql检查..但颜色和字体规则继续过度 我的php字符串颜色规则。 这是我想要实现的目标:
$var_php = " all text here is red , SELECT * and whatever sql code is in red too " ;
答案 0 :(得分:43)
SQL语言会自动注入包含SQL代码的字符串中。
转到Settings/Preferences | Editor | Language Injections
并停用不需要的规则。
或者 - 禁用SQL /数据库支持插件(因为您似乎没有任何需要)。
答案 1 :(得分:0)
您可以通过创建一个特别与DQL不匹配的新IntelliLang注入来禁用它,同时单独保留其他SQL突出显示/检查。我使用了:字符的存在。这将阻止IDE突出显示DQL,并将其标记为错误或重新格式化错误。
我在这里创建了一个带有说明的Gist:
https://gist.github.com/willemnviljoen/d20ad8ad0cc365a7e80744328246610f
答案 2 :(得分:0)
通常 PHPstorm 在决定何时应该将 SQL 字符串文字作为 SQL 代码进行检查方面做得非常好。对于出错的个别情况,禁用单行检查的最“正确”方法可能是另一个答案中提到的 PHPDoc 注释,例如:
$str = /** @lang Text */ 'Select the answer from the list';
但这对我来说似乎很混乱。幸运的是,您可以很容易地欺骗 PHPstorm,因为如果“句子”中的第一个单词不是 SQL 关键字(SELECT/UPDATE 等),它似乎会忽略该字符串。所以一个简单(虽然有点hackish)的方法是分割字符串,比如:
$str = 'Select'.' the answer from the list';