首先确认PHP环境是否缺失JSON扩展,可通过php -m | grep json检查;若未启用,根据系统类型安装:Linux(Debian/Ubuntu)使用sudo apt-get install php-json,CentOS/RHEL/Fedora使用sudo yum install php-json或sudo dnf install php-json,macOS用brew install php@版本,Windows则在php.ini中取消;extension=json的注释;最后重启服务并验证扩展加载,确保Composer正常运行。

当使用 Composer 安装或更新 PHP 项目依赖时,如果系统提示“json extension is missing”,说明当前 PHP 环境缺少 JSON 扩展。虽然 PHP 5.2 之后 JSON 已作为核心扩展内置,但在某些环境(如自定义编译的 PHP 或精简安装)中可能未启用。以下是解决该问题的方法。
检查当前 PHP 是否支持 JSON
运行以下命令查看已加载的扩展:
php -m | grep json若无输出或提示 json 未找到,则确认缺失。也可创建一个 PHP 文件写入 phpinfo();,通过浏览器查看是否启用了 JSON 模块。
启用或安装 JSON 扩展
根据操作系统和 PHP 安装方式选择对应方案:
-
Linux(Debian/Ubuntu):
运行以下命令安装 PHP JSON 扩展:
sudo apt-get install php-json
如果使用的是特定版本(如 PHP 8.1),则使用:
sudo apt-get install php8.1-json -
Linux(CentOS/RHEL/Fedora):
使用 yum 或 dnf 安装:
sudo yum install php-json
或
sudo dnf install php-json -
macOS(使用 Homebrew):
如果通过 Brew 安装 PHP,尝试:
brew install php@8.1(或其他版本)
多数情况下 JSON 默认包含,但可重装确保完整性。 -
Windows(WAMP/XAMPP):
打开 php.ini 文件(通常位于 PHP 安装目录),查找:
;extension=json
去掉前面的分号,保存并重启 Web 服务。
验证修复结果
执行以下命令确认 JSON 扩展已加载:
php -m | grep json应显示 json。之后再次运行 Composer 命令,错误应消失。
基本上就这些。只要确保 PHP 环境启用了 JSON 扩展,Composer 就能正常工作。这个错误通常不是 Composer 本身的问题,而是底层 PHP 配置不完整导致的。










