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

Laravel 10升级后重启服务报unexpected identifier 'string'错误求助

问题解决步骤

根源分析

Laravel 10 要求 PHP 版本最低为 8.1,但你的 Docker 配置使用的是 PHP 8.0,导致项目依赖的 sebastian/version 库使用了 PHP 8.1+ 专属语法,PHP 8.0 无法解析,从而触发语法错误。

解决步骤

1. 更新 Docker Compose 配置

修改 docker-compose.yml 中 laravel.test 服务的 PHP 版本配置:

laravel.test:
    container_name: server
    build:
        context: ./vendor/laravel/sail/runtimes/8.1 # 将8.0改为8.1或更高版本(如8.2)
        dockerfile: Dockerfile
        args:
            WWWGROUP: '${WWWGROUP}'
    image: sail-8.1/app # 同步修改镜像名称为对应版本

2. 清理旧容器与镜像并重新构建

执行以下命令:

# 停止并移除现有容器、网络
docker-compose down
# 删除旧的PHP8.0镜像
docker rmi sail-8.0/app
# 重新构建镜像并启动服务
docker-compose up --build -d

3. 重新安装依赖(可选但推荐)

进入容器清理旧依赖并重新安装适配PHP8.1的版本:

docker exec -it server rm -rf vendor composer.lock
docker exec -it server composer install --no-dev

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 23:51:13