Ответ 1
Где-то в вашем composer.json
у вас есть
"config": {
"preferred-install": "dist",
"platform": {
"php": "5.3.9"
}
}
Этот блок переопределяет вашу текущую версию PHP, как описано в doc.
Я пытаюсь установить доктрину в свой проект. Я получаю ошибку о неправильной версии 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",
Где-то в вашем composer.json
у вас есть
"config": {
"preferred-install": "dist",
"platform": {
"php": "5.3.9"
}
}
Этот блок переопределяет вашу текущую версию PHP, как описано в doc.
В вашем composer.json удалите следующие строки:
// ...
"config": {
"platform": {
"php": "5.3.9"
}
},
// ...
Я использую доктринные миграции с 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"
},