该错误消息表示从主composer.json
的要求。该版本要求可以只是适配器:
"require": {
"php": ">=5.5",
改变的版本是这样之后我得到:
Problem 1
- Installation request for classpreloader/classpreloader 2.0.0 -> satisfiable by classpreloader/classpreloader[2.0.0].
- classpreloader/classpreloader 2.0.0 requires php >=5.5.9 -> your PHP version (5.5.6) or "config.platform.php" value does not satisfy that requirement.
Problem 2
- Installation request for laravel/framework v5.1.17 -> satisfiable by laravel/framework[v5.1.17].
- laravel/framework v5.1.17 requires php >=5.5.9 -> your PHP version (5.5.6) or "config.platform.php" value does not satisfy that requirement.
Problem 3
- Installation request for laravelcollective/html v5.1.6 -> satisfiable by laravelcollective/html[v5.1.6].
- laravelcollective/html v5.1.6 requires php >=5.5.9 -> your PHP version (5.5.6) or "config.platform.php" value does not satisfy that requirement.
Problem 4
- laravel/framework v5.1.17 requires php >=5.5.9 -> your PHP version (5.5.6) or "config.platform.php" value does not satisfy that requirement.
- jenssegers/agent v2.1.7 requires illuminate/support ~4.0|~5.0 -> satisfiable by laravel/framework[v5.1.17].
- Installation request for jenssegers/agent v2.1.7 -> satisfiable by jenssegers/agent[v2.1.7].
在composer.json
使用下面的代码片段,一个PHP版本,可以模拟
[...]
"config": {
"preferred-install": "dist",
"platform": {
"php": "5.5.9"
}
}
Doc:https://getcomposer.org/doc/06-config.md#platform
平台
让您假的平台包(PHP和扩展),这样你可以模拟生产ENV或在配置定义你的目标平台。例如:{“php”:“5.4”,“ext-something”:“4.0”}。
不要忘记这
的Laravel项目不幸决定,它们宣布5.1版本中存在时间最长的PHP版本,他们可以与TravisCI,这是5.5.9兼容测试后运行一个
composer.phar update
。一方面这是一个合理的选择。另一方面,对于运行5.5 PHP分支的旧版本的人来说,这是一个不必要的障碍,因为在5.5.9之前的PHP 5.5中没有向后不兼容的更改 - 代码将运行。 '--ignore-platform-req'的问题是它会影响所有的包,你可能会得到只能在PHP 5.6下运行的包。 – Sven