Laravel 10.X 版本引入了多项重要改进和特性:
1. PHP 8.1+ 支持
- 最低要求 PHP 8.1,全面利用新语法特性(如枚举、只读属性)。
2. 原生类型声明
- 框架核心及生成代码(如控制器、模型)默认添加参数与返回类型声明:
php
public function show(User $user): View
{
return view('user.profile', ['user' => $user]);
}
3. 路由绑定优化
Route::singleton()支持单例资源路由:
php
Route::singleton('profile', ProfileController::class);
- 简化
show/edit/update等操作的路由定义。
4. 进程交互增强
Process模块新增超时管理、结果断言等方法:
php
$result = Process::timeout(60)->run('npm build');
$result->assertSuccess(); // 失败时抛出异常
5. 测试改进
- 集成 PHPUnit 10,支持并行测试标记:
php
/** @test */
public function it_handles_concurrent_requests()
- 新增
TestResponse::assertJsonPath()强化 JSON 验证:
php
$response->assertJsonPath('data.0.name', 'Taylor');
6. 队列监控
queue:monitor命令实时追踪队列状态:
bash
php artisan queue:monitor redis:default,redis:backup
7. CLI 工具增强
make:controller支持--parent自动继承父类:
bash
php artisan make:controller UserController --parent=BaseController
artisan inspire返回开发激励语录。
8. 弃用项清理
- 移除已弃用功能(如
faker伪数据包),改用Faker\Factory。
完整特性参考 Laravel 10 官方升级指南。