我们的 Composer 有问题。我们的库需要一个 either ... or ...
库。
所以基本上它需要这样:
"php-64bit": ">=5.4.0"
OR
"php": ">=5.4.0" AND "ext-example": "^1.0.2"
所以基本上它需要特定的 PHP 版本。
此外,它需要 64 位版本的 PHP 或
特定库才能工作。
这可能与 Composer 有关吗?如果是这样怎么办?如果不能,我们可以用其他方式解决吗?
最佳答案
我认为您不应该过度定义依赖项。
这两种平台情况都需要 PHP 5.4 或更高版本。我将其添加为唯一的硬依赖。
Composer 具有“建议”功能。您的扩展可能会被建议使用描述性文本来表明只有 32 位平台需要它。
您的代码已经必须处理这种情况,因此您可能已经实现检查以查看您是否使用 64 位(并忽略使用扩展名)。在没有扩展名的情况下,该代码在 32 位上使用时可能会发出错误。
"require": {
"php": ">=5.4"
},
"suggest": {
"ext-example":"Required to use this package on 32bit PHP"
}
这避免了让用户向他的 composer.json
添加一个脚本,该脚本只是帮助他理解为什么在第一次尝试安装您的包时失败。无论如何,他都必须阅读文档。
关于php - 在 composer.json 的需求中使用条件或?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33706986/