You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何无需重新下载项目将Laravel 9.52.8升级至Laravel 10

Laravel 9.x 升级到 10.x 步骤(无需重新创建项目)

1. 确认PHP版本要求

Laravel 10 要求 PHP 8.1 及以上版本,先检查本地PHP版本:

php -v

如果版本低于8.1,需先完成PHP升级。

2. 更新composer.json依赖配置

将你的composer.json修改为以下兼容Laravel 10的版本:

{
    "name": "laravel/laravel",
    "type": "project",
    "description": "The Laravel Framework.",
    "keywords": ["framework", "laravel"],
    "license": "MIT",
    "require": {
        "php": "^8.1",
        "bensampo/laravel-enum": "^6.3",
        "fruitcake/laravel-cors": "^2.0.5",
        "guzzlehttp/guzzle": "^7.2",
        "laravel/framework": "^10.0",
        "laravel/sanctum": "^3.0",
        "laravel/tinker": "^2.8",
        "laravel/ui": "^4.3",
        "maatwebsite/excel": "^3.1.40",
        "phpoffice/phpspreadsheet": "^1.28",
        "spatie/laravel-medialibrary": "^11.0",
        "spatie/laravel-query-builder": "^6.0"
    },
    "require-dev": {
        "fakerphp/faker": "^1.9.1",
        "laravel/sail": "^1.0.1",
        "mockery/mockery": "^1.4.4",
        "nunomaduro/collision": "^7.0",
        "phpunit/phpunit": "^10.0",
        "spatie/laravel-ignition": "^2.0"
    }
}

关键调整说明:

  • 核心框架laravel/framework升级到^10.0
  • 适配Laravel 10调整第三方依赖版本:
    • laravel/sanctum、laravel/ui同步升级到兼容分支
    • spatie/laravel-medialibrary、spatie/laravel-query-builder切换到支持Laravel 10的大版本
    • 开发依赖中phpunit/phpunit、collision、ignition升级到对应兼容版本

3. 执行Composer更新

先清除Composer缓存避免版本冲突:

composer clear-cache

然后执行更新命令:

composer update

若遇到依赖冲突,可添加参数强制更新所有关联依赖:

composer update --with-all-dependencies

4. 升级后收尾操作

  • 发布Laravel 10官方前端资源(若使用官方UI组件):
php artisan vendor:publish --tag=laravel-assets --ansi
  • 检查配置文件差异,手动合并必要的更新项:
php artisan config:diff
  • 运行数据库迁移(Laravel 10新增了部分迁移文件):
php artisan migrate
  • 全面测试应用功能,修复第三方包API变更、Laravel废弃方法调用等兼容性问题

内容的提问来源于stack exchange,提问作者nour hambarosh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 08:57:16