Symfony2, композитор, ваша версия PHP (5.6.18), переопределенная версией "config.platform.php" (5.3.9), не удовлетворяет требованию

Я пытаюсь установить доктрину в свой проект. Я получаю ошибку о неправильной версии PHP. Что можно сделать, чтобы устранить реальную причину этой ошибки? Чтобы преодолеть это, нужно использовать опцию "--ignore-platform-reqs", как описано https://getcomposer.org/doc/03-cli.md#require.

PHP-версия: PHP 5.6.18

PHP 5.6.18  (cli) (built: Feb  3 2016 17:20:21)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies

Ошибка: c.. > composer требует доктрины/привязки данных

Using version ^1.1 for doctrine/data-fixtures
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - doctrine/migrations v1.3.0 requires php ^5.5|^7.0 -> your PHP version (5.6
.18) overriden by "config.platform.php" version (5.3.9) does not satisfy that re
quirement.
    - doctrine/migrations v1.2.2 requires php >=5.4.0 -> your PHP version (5.6.1
8) overriden by "config.platform.php" version (5.3.9) does not satisfy that requ
irement.
    - doctrine/migrations v1.2.1 requires php >=5.4.0 -> your PHP version (5.6.1
8) overriden by "config.platform.php" version (5.3.9) does not satisfy that requ
irement.
    - doctrine/migrations v1.2.0 requires php >=5.4.0 -> your PHP version (5.6.1
8) overriden by "config.platform.php" version (5.3.9) does not satisfy that requ
irement.
    - doctrine/migrations v1.1.0 requires php >=5.4.0 -> your PHP version (5.6.1
8) overriden by "config.platform.php" version (5.3.9) does not satisfy that requ
irement.
    - doctrine/migrations v1.0.0 requires php >=5.4.0 -> your PHP version (5.6.1
8) overriden by "config.platform.php" version (5.3.9) does not satisfy that requ
irement.
    - Installation request for doctrine/migrations ~1.0 -> satisfiable by doctri
ne/migrations[v1.0.0, v1.1.0, v1.2.0, v1.2.1, v1.2.2, v1.3.0].


Installation failed, reverting ./composer.json to its original content.

Содержание композитора .json

"require": {
    "php": ">=5.3.9",
    "symfony/symfony": "2.8.*",
    "doctrine/orm": "^2.4.8",
    "doctrine/doctrine-bundle": "~1.4",
    "doctrine/data-fixtures" : "~1.1",
    "doctrine/doctrine-fixtures-bundle": "dev-master",

Ответы

Ответ 1

Где-то в вашем composer.json у вас есть

"config": {
   "preferred-install": "dist",
   "platform": {
       "php": "5.3.9"
   }
}

Этот блок переопределяет вашу текущую версию PHP, как описано в doc.

Ответ 3

Я использую доктринные миграции с Symfony 2.7

В моем composer.json у меня есть, я заметил, что вы этого не сделали, вы можете попробовать добавить его

"doctrine/doctrine-migrations-bundle": "^1.0"

Я вручную установил миграцию после документов Symfony2, вы можете прочитать здесь.

Это мой весь 2,7 Symfony композитор:

"require": {
    "php": ">=5.3.9",
    "symfony/symfony": "2.7.*",
    "doctrine/orm": "~2.2,>=2.2.3,<2.5",
    "doctrine/dbal": "<2.5",
    "doctrine/doctrine-bundle": "~1.4",
    "symfony/assetic-bundle": "~2.3",
    "symfony/swiftmailer-bundle": "~2.3",
    "symfony/monolog-bundle": "~2.4",
    "sensio/distribution-bundle": "~4.0",
    "sensio/framework-extra-bundle": "~3.0,>=3.0.2",
    "incenteev/composer-parameter-handler": "~2.0",
    "friendsofsymfony/user-bundle": "1.3.*@dev",
    "ircmaxell/password-compat": "^1.0",

    "sonata-project/block-bundle": "2.3.*@dev",
    "sonata-project/easy-extends-bundle": "^2.1",
    "sonata-project/datagrid-bundle": "[email protected]",
    "sonata-project/admin-bundle": "[email protected]",
    "sonata-project/doctrine-orm-admin-bundle": "[email protected]",
    "sonata-project/user-bundle": "[email protected]",
    "doctrine/doctrine-migrations-bundle": "^1.0"

},