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

PHP运行时如何判断Composer install是否使用--no-dev参数

判断Composer install是否带有--no-dev参数的方法

在PHP运行时,你可以通过以下两种可靠方式判断:

方法1:检查环境变量COMPOSER_DEV_MODE

Composer执行install或update时会自动设置COMPOSER_DEV_MODE环境变量:

  • 未加--no-dev时,变量值为1
  • 带有--no-dev时,变量值为0

PHP中直接读取该变量即可判断:

$isNoDevEnabled = getenv('COMPOSER_DEV_MODE') === '0';
if ($isNoDevEnabled) {
    // 对应--no-dev执行时的逻辑
} else {
    // 正常安装(包含dev依赖)的逻辑
}

方法2:通过Composer Config类获取状态

如果项目已通过Composer加载了自动依赖,可以调用Composer内置的配置类获取开发模式状态:

require __DIR__ . '/vendor/autoload.php';

use Composer\Factory;

$composer = Factory::create();
$isNoDevEnabled = !$composer->getConfig()->get('dev-mode');

if ($isNoDevEnabled) {
    // --no-dev已启用的处理逻辑
}

注意:此方法需要确保Composer的核心类已被自动加载,即项目已完成过Composer安装操作(无论是否带--no-dev)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 14:24:29