【发布时间】:2023-04-03 07:13:06
【问题描述】:
我想使用安装在 docker 容器中的 php 7 运行 composer,但最终的软件将在 php 5 上运行,因为那是生产服务器正在运行的。
我看不出为 php 5 安装软件和使用 php 7 cli 运行 composer 之间有任何关联,但似乎存在关联。
我如何告诉 composer 我运行 composer 的版本并不重要,重要的是它安装的包。
【问题讨论】:
标签: php composer-php
我想使用安装在 docker 容器中的 php 7 运行 composer,但最终的软件将在 php 5 上运行,因为那是生产服务器正在运行的。
我看不出为 php 5 安装软件和使用 php 7 cli 运行 composer 之间有任何关联,但似乎存在关联。
我如何告诉 composer 我运行 composer 的版本并不重要,重要的是它安装的包。
【问题讨论】:
标签: php composer-php
似乎正确的解决方案是添加以下内容
"config": {
"platform": {
"php": "5.6.17"
}
}
到您的作曲家文件,然后它将使用它作为您想要尊重的 php 的“版本”。
【讨论】:
您的 composer.json 文件告诉 composer 要下载的软件版本。软件支持的 PHP 版本取决于软件。例如,如果您尝试下载的软件包在版本 4 中停止支持 PHP 5,您将需要版本 3,例如“3.*”或“3.9”或任何您的特定要求。
"require": {
"some/package": "3.*"
}
https://getcomposer.org/doc/01-basic-usage.md#package-version-constraints
您可以使用平台包“要求”某个版本的 PHP,但这不会下载任何东西,只是检查。当您在 7 上开发并在 5 上发布时,这不是您想要的。
【讨论】: