This page is a translated version of the page Continuous integration/PHP CodeSniffer and the translation is 100% complete.

PHP CodeSniffer是一个用于检测PHP代码中的代码样式错误的实用程序。 我们使用Composer作为包装器来管理CodeSniffer的版本、依赖项和执行。

首先,通过运行composer update获取开发依赖项。

对于大多数MediaWiki扩展、皮肤和PHP库,执行composer test也将执行CodeSniffer。 由于MediaWiki核心的大小,它被公开为一个单独的命令composer phpcs

在没有Composer的情况下本地执行

如果你遇到Composer超时的问题,你可以用vendor/bin/phpcs -p -s直接运行它。 重要的是要执行Composer在本地项目资源库的vendor/bin中安装的PHP_CodeSniffer版本,以便找到所有嗅探。 不要使用在您的路径上找到的系统版本。

如果出现内存不足错误,您可以使用更多内存运行它: vendor/bin/phpcs -p -s -d memory_limit=256M.

版本控制

建议您在composer.json文件中固定特定版本。 我们试图坚持semver.org的精神,但不是实际的标准。 我们关心的主要事情是确保无论如何,如果你运行1美元,它将通过之前通过的,而不是因为发布了新版本而随机失败。 当您试图移植补丁或只是试图开发某些东西时,随机失败的构建是一种痛苦,需要中断您的工作来修复它。

我们目前使用0作为我们的主要版本,并将提升次要版本以获得新的嗅探,并提升补丁版本以修复错误或增强现有嗅探。 不能保证包含的实际PHP代码的稳定性。

另见