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

Laravel 9.9生产环境Composer install报json_decode类型错误求助

解决Composer安装php-stripe库时的json_decode类型错误

PHP Fatal error: Uncaught TypeError: json_decode(): Argument #1 ($json) must be of type string, bool given in phar:///usr/local/bin/composer/src/Composer/Json/JsonFile.php:194 Stack trace:

针对仅生产服务器出现该问题、本地环境正常的情况,可按以下步骤排查解决:

  • 清理Composer缓存与重建依赖
    服务器端Composer缓存或依赖文件可能损坏,执行以下命令重置:

    composer clear-cache
    rm -rf vendor/
    rm composer.lock
    composer install --no-dev
    
  • 同步本地正常的依赖配置文件
    直接将本地环境验证通过的composer.json和composer.lock文件替换服务器上的对应文件(替换前务必备份服务器原有文件),避免服务器端配置出现语法或版本匹配问题。

  • 检查PHP环境兼容性

    1. 确认服务器PHP版本与本地一致(Laravel 9.9要求PHP 8.0及以上):
      php -v
      
    2. 验证json扩展是否安装启用:
      php -m | grep json
      
      若缺失,Ubuntu系统可执行对应版本的安装命令(如PHP8.1版本:apt install php8.1-json)。
  • 修复项目目录权限
    确保Composer拥有项目目录的读写权限:

    chown -R www-data:www-data /path/to/your/laravel-project
    chmod -R 755 /path/to/your/laravel-project
    
  • 锁定php-stripe库版本
    在composer.json中明确指定与本地环境一致的php-stripe版本,避免服务器拉取不兼容的新版本:

    "require": {
        "stripe/stripe-php": "^7.100" // 替换为你本地使用的版本号
    }
    

    执行更新命令:

    composer update stripe/stripe-php
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 07:08:16