PHP代码嗅探器

时间:2017-05-31 07:47:56

标签: php phpcodesniffer phpcs

我有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规则后一切正常。

问候

2 个答案:

答案 0 :(得分:2)

好的伙计们,感谢您的帮助,但我找到了解决方案,@ roberto06,感谢链接m8!

添加

function ringkas_sekarang(){
    var formdata=$("#formku").serialize();
    if( formdata.indexOf('pilih_fitur')==-1 ) {
        alert('you must select fiture');
        return false;
    }
    $("#myModal").modal('show');
    var id=$("#select_uji").val();

    $.ajax({
        type:"POST",
        url:"<?php echo site_url()?>/c_index/hitung_knn",
        data: formdata,
        success:function(data) {
            $("#myModal").modal('hide');
            $("#sesudah_ringkas").html("<textarea style='text-align:justify;padding:20px;border:none;font-size:12px;width:48%;height:380px;float:right' readonly >"+data+"</textarea>");
        }
    });
}

它完美无缺:)

答案 1 :(得分:1)

它只说一切都应该在同一条线上。

顺便说一句,在你的情况下更好的是:

$value = '//'.$this->get('router')->getContext()->getHost();

return $value . ($this->get('router')->getContext()->getHttpPort() !== 80) ? (':'.$this->get('router')->getContext()->getHttpPort()) : '';