0

我正在为现有项目实施 PHPCS。我想检查函数是否有文档块。

我目前正在使用以下规则:

    <rule ref="Squiz.Commenting.FunctionComment" />
    <rule ref="Squiz.Commenting.FunctionCommentThrowTag" />
    <rule ref="Squiz.Commenting.VariableComment" />
    <rule ref="Squiz.Commenting.DocCommentAlignment"/>
    <rule ref="Generic.Files.LineLength">
        <properties>
            <property name="absoluteLineLimit" value="120"/>
            <property name="lineLimit" value="120"/>
        </properties>
    </rule>
    <!-- Ban some functions -->
    <rule ref="Generic.PHP.ForbiddenFunctions">
        <properties>
            <property name="forbiddenFunctions" type="array">
                <element key="print" value="echo"/>
                <element key="var_dump" value="null"/>
                <element key="dd" value="null"/>
                <element key="dump" value="null"/>
                <element key="echo" value="null"/>
                <element key="print_r" value="null"/>
                <element key="var_export" value="null"/>
            </property>
        </properties>
    </rule>

但是我遇到了很多问题,即参数注释应该以大写字母开头并以句号结尾。

我怎样才能使关于大写字母和句号的规则不那么严格

编辑:目前代码块也想对齐参数。@param array这会在和之间产生很多难看的空白$parameter。我可以在 phpcs 和 phpcbf 中删除此规则吗?

4

1 回答 1

1

使用 -s 命令行参数运行 PHPCS,这样您就可以在每条消息旁边看到错误代码。然后,您可以通过将这些特定消息的严重性设置为 0 来排除规则集中的这些特定消息。

In this specific case, you will probably want to add these 4 exclusions to your ruleset:

<rule ref="Squiz.Commenting.FunctionComment.ParamCommentNotCapital">
    <severity>0</severity>
</rule>
<rule ref="Squiz.Commenting.FunctionComment.ParamCommentFullStop">
    <severity>0</severity>
</rule>
<rule ref="Squiz.Commenting.FunctionComment.SpacingAfterParamType">
    <severity>0</severity>
</rule>
<rule ref="Squiz.Commenting.FunctionComment.SpacingAfterParamName">
    <severity>0</severity>
</rule>
于 2019-11-07T21:27:26.433 回答