Composer如何处理扩展依赖的ext声明配置方式是什么?
- 内容介绍
- 文章标签
- 相关推荐
本文共计893个文字,预计阅读时间需要4分钟。
markdownComposer 无法安装任何 PHP 扩展,只有在执行 composer install 或 composer update 时调用 extension_loaded() 进行实时校验;缺失则报错中断,不会生成 vendor/autoload.php。
ext-xxx 声明必须和 php -m 输出完全一致
拼写错误是部署失败最常见原因。扩展名区分大小写、不能带后缀、不能加空格或下划线变体:
-
ext-pdo_mysql✅(php -m输出就是pdo_mysql) -
ext-pdo-mysql❌(连不上,Composer 查不到) -
ext-gd✅(不是gd2、php-gd或gd.so) -
ext-intl✅(不是intl.so,也不是ICU)
不确定时,本地执行 php -m | grep -i gd 确认真实模块名,再照抄进 composer.json 的 require 字段。
本文共计893个文字,预计阅读时间需要4分钟。
markdownComposer 无法安装任何 PHP 扩展,只有在执行 composer install 或 composer update 时调用 extension_loaded() 进行实时校验;缺失则报错中断,不会生成 vendor/autoload.php。
ext-xxx 声明必须和 php -m 输出完全一致
拼写错误是部署失败最常见原因。扩展名区分大小写、不能带后缀、不能加空格或下划线变体:
-
ext-pdo_mysql✅(php -m输出就是pdo_mysql) -
ext-pdo-mysql❌(连不上,Composer 查不到) -
ext-gd✅(不是gd2、php-gd或gd.so) -
ext-intl✅(不是intl.so,也不是ICU)
不确定时,本地执行 php -m | grep -i gd 确认真实模块名,再照抄进 composer.json 的 require 字段。

