跳过编写器PHP要求

h9a6wy2h  于 2022-12-21  发布在  PHP
关注(0)|答案(3)|浏览(115)

我们使用的是PHPCI和composer,运行PHPCI的服务器是PHP5.3。
对于一个项目,我们使用composer添加了Facebook PHP SDK。它需要PHP 5.4。Composer由PHPCI触发并执行。但由于CI服务器刚刚获得PHP 5.3,composer失败并显示错误消息:

facebook/php-sdk-v4 4.0.9 requires php >=5.4.0 -> no matching package found.

当然,这让我在PHPCI中的构建失败。
有没有可能跳过这个要求?也许可以在composer.json中添加一个选项?或者在composer.phar调用中添加一个参数?

gywdnpxw

gywdnpxw1#

我找到了一个选择:

composer install --ignore-platform-reqs

忽略平台需求(php & ext- packages)。

**编辑:**您可以跳过平台检查,但是Composer将基于最新的PHP版本获取包。因此,当您需要Composer在依赖解析期间模拟PHP版本时,您可以(并且应该!)在Composer.json中使用此命令:

{
    "config": {
       "platform": {
           "php": "8.0.24"
       }
    }
}

https://getcomposer.org/doc/06-config.md#platform

ldioqlga

ldioqlga2#

对于许多命令,您可以使用参数“--ignore-platform-reqs“告诉composer绕过php版本检查:

composer COMMAND --ignore-platform-reqs

这将绕过php版本规范。
请注意,软件可能工作,也可能不工作:php版本规范在那里是因为代码中的某个地方至少需要指定的php版本,所以如果你使用那个代码软件就会崩溃。

soat7uwm

soat7uwm3#

如果有什么东西需要特定版本的PHP,那么它将无法在较低版本的PHP中运行。当绕过PHP要求时,您仍然会收到错误。
顺便说一句,PHP5.3已经不再维护了,我强烈建议更新PHPCI服务器。

相关问题