cn-consult/coding-standard

我们公司基于PHP_CodeSniffer的通用编码标准

0.7 2020-03-10 09:45 UTC

This package is auto-updated.

Last update: 2024-09-12 02:50:57 UTC


README

我们基于PHP_CodeSniffer的通用编码标准。

目前这主要用于PHP代码,但也可能用于检查JS或CSS代码,但我们没有为这些语言提供特殊的Sniffs或代码。

使用方法

要使用此存储库,将其添加到您的composer.json文件中的开发依赖项:composer require --dev cn-consult/coding-standard:dev-master

之后,在项目根目录中创建一个名为phpcs.xml的文件,并添加以下内容

<?xml version="1.0"?>
<ruleset name="MyProject">
    <description>My cool project, using the CN-Consult PHPCS standard</description>
    <rule ref="vendor/cn-consult/coding-standard" />
    <exclude-pattern>vendor/*</exclude-pattern>
</ruleset>

之后,您可以通过执行以下命令来检查您的代码:vendor/bin/phpcs .

开发

要添加新规则到我们的标准,您应该打开一个youtrack问题单,并说明您想完成什么。您应该添加一些示例,以显示检查应该允许和/或禁止的内容。当您得到积极的反馈时,您可以实施您的检查。在实施自定义Sniff之前,检查是否已经存在一个能够实现您想要的功能的Sniff是个好主意。不幸的是,没有一份单独的文档可以显示所有可用的Sniffs。一个良好的起点可能是https://github.com/squizlabs/PHP_CodeSniffer/wiki/Customisable-Sniff-Properties,或者查看通过名称实现的Sniffs或通过源代码中的所需令牌(例如T_FUNCTION)进行搜索。如果没有其他方法,您可以按照以下指南实施自己的Sniff:https://github.com/squizlabs/PHP_CodeSniffer/wiki/Coding-Standard-Tutorial

添加Sniff后,您可以通过提供的tests/run-manually.sh脚本运行phpcs,并检查它是否工作并输出测试文件的正确问题。如果一切如预期,请确保您的新的Sniff已得到适当的测试。

如何添加新的良好测试

这很简单。只需在examples/good/目录中添加额外的文件,您不希望它们生成任何输出,然后运行单元测试。您的新文件将自动被选中。

如何添加新的不良测试

这稍微复杂一些。首先在examples/bad/目录中添加一个示例文件,该文件应该触发某些问题。然后使用tests/generate-expected-bad-output.php来验证该文件显示您期望的问题并创建一个相应的预期文件。generate-expected-bad-output.php将引导您完成此过程,只需阅读其输出即可。