什么是 Laravel Pint
Laravel Pint 是基于 PHP CS Fixer 构建的代码风格自动修复工具。它以「无需配置即可上手」为目标进行设计,会依照 Laravel 编码风格自动格式化代码。 将团队开发中常见的「代码风格 review 评论」自动化,可以让大家专注于更本质的代码评审。安装
新创建的 Laravel 应用中已经默认安装了 Pint。对于旧版本项目,可以通过 Composer 安装。运行方式
基本用法
自动修复项目中所有的.php 文件。
选项一览
配置
在项目根目录创建pint.json 可以自定义行为。
预设
预设即一组规则的集合。默认是laravel 预设,包含最适合 Laravel 项目的规则。
自定义规则
pint.json 可以逐条启用或关闭规则。可用规则请参阅 PHP CS Fixer Configurator。
排除文件或目录
可以从检查中排除特定目录。notName。
notPath。
推荐配置
以下是一份在实际开发中效果不错的pint.json 配置示例。
no_unused_imports 主要面向包开发场景。 Pint 默认已经是 true(删除未使用的 use),因此常规 Laravel 项目并不需要显式配置。在包开发中,可能会通过 trait 或接口导入来开关功能,此时先加上 false,再根据各包实际情况改为 true 更加灵活。在 composer.json 中注册脚本
在composer.json 中注册 pint 相关脚本后,就可以直接通过 composer pint 执行。
在 CI 环境中可以使用
composer pint:test,它会在不修改文件的情况下检测风格违规。--test 选项在有错误时会返回非零退出码,可用于 CI 的通过判断。在 GitHub Actions 中自动执行
可以借助 GitHub Actions,在每次推送时自动修复代码风格并提交。1
设置 Workflow 权限
在 GitHub 仓库 Settings > Actions > General > Workflow permissions 中启用「Read and write permissions」。
2
创建 Workflow 文件
创建
.github/workflows/lint.yml。