首先通过Composer安装Rector并创建配置文件,再运行命令预览及执行代码升级,最后结合Composer脚本简化操作流程。

在现代PHP项目维护中,随着框架和库的不断迭代,保持代码与最新规范兼容变得尤为重要。Rector 是一个强大的静态代码分析和重构工具,能自动将旧代码升级为新版本语法或结构。而 Composer 作为 PHP 的依赖管理工具,可以轻松集成 Rector 到项目中。下面教你如何用 Composer 配合 Rector 实现项目代码升级。
安装 Rector 到项目中
推荐将 Rector 以开发依赖的方式安装到项目本地,避免全局环境冲突。
composer require rector/rector --dev这条命令会把 Rector 安装在当前项目的 vendor 目录下,仅用于开发阶段。
创建 Rector 配置文件
在项目根目录创建 rector.php 文件,用于定义要执行的规则集或目标版本。
例如:将 Laravel 8 项目升级到 Laravel 9:
sets([
LaravelSetList::LARAVEL_90,
]);
// 设置扫描目录
$rectorConfig->paths([
__DIR__ . '/app',
__DIR__ . '/database',
__DIR__ . '/routes',
__DIR__ . '/tests',
]);
};
如果你只是想升级 PHP 语法(如从 PHP 7.4 升到 8.1):
$rectorConfig->sets([
LevelSetList::UP_TO_PHP_81,
]);
运行 Rector 进行代码升级
通过 vendor/bin 路径执行 Rector 命令:
这个命令会根据 rector.php 中的配置,自动分析并修改匹配的文件。
建议先使用 --dry-run 查看变更预览:
vendor/bin/rector process --dry-run确认无误后再执行实际修改:
vendor/bin/rector process --clear-cache结合 Composer Scripts 快速调用
为了方便团队协作,可以在 composer.json 中添加脚本别名:
"scripts": {
"rector": "rector process",
"rector-dry": "rector process --dry-run"
}
之后就可以用更简洁的命令运行:
composer rector-dry composer rector基本上就这些。使用 Composer 管理 Rector,既能保证环境一致性,又能灵活配置升级策略。配合版本控制(如 Git),还能安全地回滚变更。代码升级不复杂,但容易忽略细节,提前测试是关键。










