Composer需要替代方案:扩展或扩展

时间:2015-03-23 14:02:02

标签: php composer-php

我在我的库包(https://packagist.org/packages/hazardland/db)中使用apc用户缓存函数,但如您所知:

直到PHP 5.5有estension ext_apc http://pecl.php.net/package/apc(用户缓存+ opcache)

从php 5.5开始,有ext_apcu http://pecl.php.net/package/APCu,它只实现用户缓存功能,而不是opcache。

所以在我的composer.json中,我需要来要求这两个 exstensions中的一个:ext_apc或ext_apcu,无论用户有哪个。是否可以设置这种扩展依赖?

如果我只需要ext_apc,我将丢失php 5.5.x用户,但如果我只需要ext_apcu,我将丢失php 5.4.x用户。

研究后更新:

因此在作曲家提供替换中有2个指令,但他们无法提供帮助,因为我需要ext-apc由ext-apc提供并作为ext - * - s是作曲家中的硬编码虚拟包,至少作曲家团队需要改变它们吗? (我甚至无法在packagist.org上的虚拟包列表中找到ext-apc或ext-apcu。)

1 个答案:

答案 0 :(得分:1)

加载仅限ext-apcu 扩展名及之后:

composer show --platform

返回:

ext-apc 4.0.7 The apc PHP extension ext-apcu 4.0.7 The apcu PHP extension

所以只需要求ext-apc 处理这两种情况。