yaroslavche/php-project

干净整洁的PHP8项目,附带开发工具

安装: 32

依赖者: 0

建议者: 0

安全: 0

星标: 1

关注者: 2

分支: 0

开放问题: 0

类型:项目

0.0.6 2022-05-05 09:19 UTC

This package is auto-updated.

Last update: 2024-09-05 14:19:53 UTC


README

PHP build License Latest Stable Version PHP Version

干净的PHP 8.1项目,附带开发工具。

安装

下载并安装

$ composer create-project yaroslavche/php-project project-name --prefer-source

或手动

$ git clone git@github.com:yaroslavche/php-project.git project-name
$ composer install --prefer-source
Post cmd

composer.json 中你可以看到 post-install-cmdpost-create-project-cmd,它们将

  • 询问所需信息
  • 修改 composer.json
  • 替换 README.md 中的所有 (vendor, package) 出现
  • 取消 .gitattributes 中的注释行
  • composer.json 中移除 self(如果安装器完成后移除)
  • 移除安装器(默认移除整个 internal 目录)

工具

PHP_CodeSniffer

squizlabs/PHP_CodeSniffer

PHP_CodeSniffer 是一组两个 PHP 脚本;主脚本 phpcs 将 PHP、JavaScript 和 CSS 文件标记化以检测违反定义的编码标准的违规行为,第二个脚本 phpcbf 用于自动纠正编码标准违规行为。PHP_CodeSniffer 是一个至关重要的开发工具,确保您的代码保持整洁和一致。

检查

$ composer phpcs

修复

$ composer phpcbf
PHPMD - PHP 混杂度检测器

phpmd/phpmd

PHPMD 的功能是:它接收给定的 PHP 源代码库,并在其中查找多个潜在问题。这些问题可以是:可能的错误、代码效率低下、过于复杂的表达式、未使用的参数、方法、属性。

$ composer phpmd
PHPStan - PHP 静态分析工具

phpstan/phpstan

PHPStan 专注于在运行代码之前找到代码中的错误。它甚至在您为代码编写测试之前就捕捉到整类错误。在某种程度上,PHPStan 将 PHP 接近编译语言,因为可以在实际运行代码之前检查每一行代码的正确性。

$ composer phpstan
PHPUnit

sebastianbergmann/phpunit | 编写测试

PHPUnit 是一个针对 PHP 的程序员导向的测试框架。它是单元测试框架 xUnit 架构的一个实例。

运行测试

$ composer phpunit

代码覆盖率

$ composer coverage

将在控制台显示结果,如果成功,则在浏览器中生成 build/coverage/html/ 目录(请参阅 index.html),以及 build/coverage/clover.xml(在某些情况下可能很有用)。

Infection - 变异测试框架

infection/infection

Infection 是一个基于 AST(抽象语法树)变异的 PHP 变异测试框架。它作为一个 CLI 工具运行,可以从项目的根目录执行。

变异测试是一种测试方法,它涉及以小方式修改程序并分析测试套件对这些修改的反应。如果修改代码后测试通过,那么我们可能没有覆盖到代码的某一行,或者测试对变异的代码片段效率不高。

$ composer infection
Roave 安全建议

Roave/SecurityAdvisories

不提供任何 API 或可用的类:它的唯一目的是防止安装已知和记录的安全问题的软件。