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

Laravel 5.0升级至最新版遇box/spout依赖问题:ext-zip缺失

解决Laravel升级中box/spout的ext-zip依赖问题

问题分析

你安装的php80-php-pecl-zip不是正确的适配包,RHEL7.9上搭配PHP8.0(通常来自Remi仓库)的官方zip扩展包是php80-php-zip,而非PECL版本。另外你之前在/etc/php.d添加的配置文件无效,因为Remi源的PHP8.0有独立的配置目录。

解决步骤

  1. 卸载错误的PECL包

    sudo yum remove php80-php-pecl-zip.x86_64
    
  2. 安装正确的zip扩展包

    sudo yum install php80-php-zip.x86_64
    

    这个包会自动将扩展配置文件放到PHP8.0的专属目录/etc/opt/remi/php80/php.d/,无需手动创建ini文件。

  3. 验证扩展是否加载
    执行以下命令检查CLI版本的PHP是否加载了zip扩展(Composer依赖CLI环境运行):

    php -m | grep zip
    

    如果输出zip,说明扩展加载成功。

  4. 重启服务(可选)
    若需要确保Apache的PHP环境也加载扩展,重启Apache:

    sudo systemctl restart httpd
    
  5. 重新执行Composer命令
    现在可以继续运行:

    composer require box/spout
    

    或者回到升级流程执行composer install。

注意:Laravel 5.0直接升级到最新版本跨度极大,后续可能还会遇到更多依赖兼容问题,建议分版本逐步升级(比如先升到5.1,再到5.2,直到最新版),降低升级风险。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 18:30:59