laminas70 / laminas-coding-standard
Laminas Coding Standard 的 PHP 7.0 支持
Requires
- php: >=7.0.0
- dealerdirect/phpcodesniffer-composer-installer: ^0.7
- slevomat70/coding-standard: dev-master
- squizlabs/php_codesniffer: ^3.6
- webimpress70/coding-standard: dev-master
Replaces
This package is auto-updated.
Last update: 2024-09-22 11:33:40 UTC
README
🇷🇺 俄罗斯公民
我们,Laminas 的参与者,来自不同的国家。我们中许多人有俄罗斯和乌克兰的朋友、亲戚和同事。我们中的一些人生于俄罗斯。我们中的一些人现在住在俄罗斯。我们中的一些祖父母在二战中与法西斯战斗过。这里没有人支持法西斯主义。
我们中的一位成员有一位乌克兰亲戚,她和儿子一起逃离了家园。由于前方道路的轰炸,火车延误了。我们有一些朋友躲在防空洞里。我们在空袭后焦急地等待他们的消息,空袭无差别地攻击医院、学校、幼儿园和房屋。我们不是从任何媒体上得知这些消息的。这是我们亲身经历的事情。
您对我们足够信任,使用我们的程序,我们请求您再次信任我们。我们需要帮助。走出家门,抗议这场毫无意义的战争。停止杀戮。说“停止战争!”
🇺🇸 致俄罗斯公民
我们Laminas的成员来自世界各地。我们中许多人有俄罗斯和乌克兰的朋友、家人和同事。我们中的一些人生于俄罗斯。我们中的一些人现在住在俄罗斯。我们中的一些祖父母在二战中与纳粹战斗过。这里没有人支持法西斯主义。
我们的团队成员中有一位乌克兰亲戚,她和儿子一起逃离了家园。由于前方道路的轰炸,火车延误了。我们有一些朋友躲在防空洞里。我们在空袭后焦急地等待他们的消息,空袭无差别地攻击医院、学校、幼儿园和房屋。我们不是从任何媒体上得知这些消息的。这是我们亲身经历的事情。
您对我们足够信任,使用我们的软件。我们请求您在这件事情上也信任我们。我们需要您的帮助。走出家门,抗议这场毫无意义的战争。停止杀戮。说“停止战争!”
Laminas 组件的编码标准规则集。
本规范扩展并扩展了 PSR-12,扩展编码风格指南,并要求遵守 PSR-1,基本编码标准。这些是最小规范,并不涵盖所有因素,包括以下内容:
- 运算符周围的空白
- 数组键和运算符的对齐
- 对象操作的对齐
- 多行条件语句的格式化
- 导入什么和不导入什么,以及如何导入
- 等等。
贡献者有不同的编码风格,维护者也是如此。在代码审查过程中,经常讨论空格和对齐,何时需要导入函数。这就是这个编码标准的用武之地:在组件内部和组件之间保持一致性。
安装
-
通过运行以下命令安装模块:
composer require --dev laminas70/laminas-coding-standard
-
将 composer 脚本添加到您的
composer.json
文件中"scripts": { "cs-check": "phpcs", "cs-fix": "phpcbf" }
-
在您的存储库的根目录下创建一个名为
phpcs.xml
的文件,并包含以下内容<?xml version="1.0"?> <ruleset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vendor/squizlabs/php_codesniffer/phpcs.xsd"> <arg name="basepath" value="."/> <arg name="cache" value=".phpcs-cache"/> <arg name="colors"/> <arg name="extensions" value="php"/> <arg name="parallel" value="80"/> <!-- Show progress --> <arg value="p"/> <!-- Paths to check --> <file>config</file> <file>src</file> <file>test</file> <!-- Include all rules from the Laminas Coding Standard --> <rule ref="LaminasCodingStandard"/> </ruleset>
您可以在该文件中添加或排除某些位置。有关参考,请参阅:https://github.com/squizlabs/PHP_CodeSniffer/wiki/Annotated-Ruleset
使用方法
-
仅运行检查
composer cs-check
-
自动修复许多 CS 问题
composer cs-fix
忽略文件的部分
注意:在 PHP_CodeSniffer 版本 3.2.0 之前,使用
// @codingStandardsIgnoreStart
和// @codingStandardsIgnoreEnd
。这些已被弃用,将在 PHP_CodeSniffer 版本 4.0 中删除。
禁用文件的部分
$xmlPackage = new XMLPackage; // phpcs:disable $xmlPackage['error_code'] = get_default_error_code_value(); $xmlPackage->send(); // phpcs:enable
禁用特定规则
// phpcs:disable Generic.Commenting.Todo.Found $xmlPackage = new XMLPackage; $xmlPackage['error_code'] = get_default_error_code_value(); // TODO: Add an error message here. $xmlPackage->send(); // phpcs:enable
忽略特定违规
$xmlPackage = new XMLPackage; $xmlPackage['error_code'] = get_default_error_code_value(); // phpcs:ignore Generic.Commenting.Todo.Found // TODO: Add an error message here. $xmlPackage->send();
开发
新规则或 Sniffs 可能不会在次要或错误修复版本中引入,而应始终基于 develop 分支,并排队等待下一个主要版本,除非被认为是现有规则的错误修复。
如果您想测试对 Laminas 组件或您自己的项目的更改,请使用 composer 全局安装您的 laminas-coding-standard 分支
$ composer global config repositories.laminas-coding-standard vcs git@github.com:<FORK_NAMESPACE>/laminas-coding-standard.git $ composer global require --dev laminas70/laminas-coding-standard:dev-<FORKED_BRANCH> # For this to work, add this to your path: ~/.composer/vendor/bin # Using `-s` prints the rules that triggered the errors so they can be reviewed easily. `-p` is for progress display. $ phpcs -sp --standard=LaminasCodingStandard src test
确保您在测试后从您的全局 composer.json 文件中删除全局安装!!!
通过安装 MkDocs 并运行 mkdocs serve
可以在本地预览文档。这将启动一个服务器,您可以在其中阅读文档。
参考
规则可以根据您的偏好添加、排除或调整,更多有关如何执行此操作的信息可以在此找到