Composer php 如何在不显式约束所有依赖包的情况下约束与PHP的兼容性
我在我的Composer php 如何在不显式约束所有依赖包的情况下约束与PHP的兼容性,composer-php,Composer Php,我在我的composer.json中得到了这个要求: "php": ">= 5.6", "symfony/http-foundation": "^3.0" 该配置的问题在于,它将安装仅与PHP7及更高版本兼容的paragonie/random_compatv9.99.99。但问题是,我不希望我的composer.lock文件需要PHP7,我希望它仍然与PHP5.6兼容 我找到的解决方案是跟踪哪个包在拉这个依赖项,一旦找到它,我就将它添加到我的需求中: "paragonie/random_
composer.json中得到了这个要求:
"php": ">= 5.6",
"symfony/http-foundation": "^3.0"
该配置的问题在于,它将安装仅与PHP7及更高版本兼容的paragonie/random_compat
v9.99.99。但问题是,我不希望我的composer.lock
文件需要PHP7,我希望它仍然与PHP5.6兼容
我找到的解决方案是跟踪哪个包在拉这个依赖项,一旦找到它,我就将它添加到我的需求中:
"paragonie/random_compat": "~2.0"
但是我想知道是否有更好的方法来做到这一点:不知何故告诉我,我接受PHP5.6以上的所有版本,但我不接受会强制使用PHP7的软件包?如果你想使composer.lock
与PHP5.6兼容,你至少有两个选项来实现这一点:
将PHP 5.6用于composer update
-您应该能够在您的操作系统上安装多个版本的PHP并运行composer,如下所示:
/path/to/php6.5 /path/to/composer update
使用composer.json
中的设置强制安装特定版本,而不考虑用于运行composer命令的PHP版本:
"config": {
"platform": {
"php": "5.6.38"
}
},
如果要使composer.lock
与PHP5.6兼容,至少有两个选项:
将PHP 5.6用于composer update
-您应该能够在您的操作系统上安装多个版本的PHP并运行composer,如下所示:
/path/to/php6.5 /path/to/composer update
使用composer.json
中的设置强制安装特定版本,而不考虑用于运行composer命令的PHP版本:
"config": {
"platform": {
"php": "5.6.38"
}
},
这是您项目的composer.json
,或者只是一个库/依赖项?它来自我的项目()这是您项目的composer.json
,或者只是一个库/依赖项?它来自我的项目()