通过Composer集成Rector可实现PHP代码一键重构。先使用composer require rector/rector --dev安装依赖,再创建rector.php配置文件定义规则集(如升级至PHP 8.1),然后在composer.json中添加"scripts": {"rector": "rector process"}脚本命令,最后运行composer rector执行重构,结合CI/CD使用--dry-run预览变更,确保安全自动化升级。

Composer 本身是 PHP 的依赖管理工具,它不直接执行代码重构,但可以与 Rector 集成,通过定义脚本命令来自动化代码升级和重构流程。Rector 是一个强大的静态代码分析和重构工具,能自动将旧代码转换为新语法或适配新版本框架。下面介绍如何通过 Composer 将 Rector 集成到项目中,实现一键式代码重构。
安装 Rector 作为开发依赖
使用 Composer 在项目中安装 Rector:
composer require rector/rector --dev这会将 Rector 添加到 require-dev 中,仅用于开发环境。
创建 Rector 配置文件
在项目根目录下创建 rector.php 配置文件,用于指定要应用的规则集或具体重构规则:
use Rector\Config\RectorConfig;use Rector\Set\ValueObject\LevelSetList;
return static function (RectorConfig $rectorConfig): void {
$rectorConfig->paths([
DIR . '/src',
DIR . '/tests',
]);
// 使用预设规则集,例如升级到 PHP 8.1
$rectorConfig->sets([
LevelSetList::UP_TO_PHP_81,
]);
};
通过 Composer 脚本运行 Rector
在 composer.json 中添加自定义脚本,方便调用 Rector:
"scripts": {"rector": "rector process"
}
之后就可以通过以下命令运行重构:
该命令会执行 Rector 定义的重构规则,自动修改代码。
结合 CI/CD 实现自动化重构
你还可以将 Rector 命令集成到持续集成流程中。例如在 GitHub Actions 中添加步骤:
- name: Run Rectorrun: composer rector --dry-run
使用 --dry-run 参数先预览变更,避免自动修改生产代码。确认无误后可移除该参数进行真实重构。
基本上就这些。通过 Composer 管理 Rector 依赖并封装命令,能轻松实现代码风格升级、语法现代化和框架迁移的自动化。关键是配置好规则集,并通过脚本统一入口,提升团队协作效率。










