我对 PHP 代码嗅探器和三元运算符有疑问。我添加了检查运算符前后空格的规则
<rule ref="Squiz.WhiteSpace.OperatorSpacing"/>
现在我在简短的 if 语句中有错误:
37 | ERROR | [x] Expected 1 space before "?"; newline found
38 | ERROR | [x] Expected 1 space before ":"; newline found
我的代码如下所示:
return ($this->get('router')->getContext()->getHttpPort() == 80)
? '//'.$this->get('router')->getContext()->getHost()
: '//'.$this->get('router')->getContext()->getHost().':'.$this->get('router')->getContext()->getHttpPort();
有谁知道哪里有问题?我可以粘贴整个规则集文件,但删除 OperatorSpacing 规则后一切正常。
问候