Как создать более старый (2.4, а не 2.5) проект ZF2 с ZFTool
В текущей папке я установил ZFTool
$ cat composer.json
{
"require" : {
"php" : ">=5.3.3",
"zendframework/zftool": "v0.1.0",
"zendframework/zendframework": "2.4.8"
}
}
$ /opt/lampp/bin/php ./vendor/bin/zf.php version
ZFTool - Zend Framework 2 command line Tool
The application in this folder is using Zend Framework 2.4.8
я попробую
Сначала установите ZF2, а затем создайте проект
$ /opt/lampp/bin/php ./vendor/bin/zf.php install zf proj000 2.4.8
The ZF library 2.4.8 has been installed in proj000.
$ /opt/lampp/bin/php ./vendor/bin/zf.php create project proj000
The directory proj000 already exists. You cannot create a ZF2 project here.
Я получил правильную версию библиотеки, но не могу создать проект.
Сначала создайте проект, а затем установите ZF2
$ /opt/lampp/bin/php ./vendor/bin/zf.php create project proj001
sh: 1: php: not found
PHP Warning: copy(/tmp/composer.phar): failed to open stream: No such file or directory in /PATH/vendor/zendframework/zftool/src/ZFTool/Controller/CreateController.php on line 85
Warning: copy(/tmp/composer.phar): failed to open stream: No such file or directory in /PATH/vendor/zendframework/zftool/src/ZFTool/Controller/CreateController.php on line 85
PHP Warning: chmod(): No such file or directory in /PATH/vendor/zendframework/zftool/src/ZFTool/Controller/CreateController.php on line 87
Warning: chmod(): No such file or directory in /PATH/vendor/zendframework/zftool/src/ZFTool/Controller/CreateController.php on line 87
ZF2 skeleton application installed in proj001.
In order to execute the skeleton application you need to install the ZF2 library.
Execute: "composer.phar install" in proj001
For more info in proj001/README.md
$ /opt/lampp/bin/php ./vendor/bin/zf.php install zf proj001 2.4.8
The directory proj001 already exists. You cannot install the ZF2 library here.
Когда я проверяю proj001/composer.json, я вижу, создаются настройки ZF 2.5
{
"name": "zendframework/skeleton-application",
"description": "Skeleton Application for ZF2",
"license": "BSD-3-Clause",
"keywords": [
"framework",
"zf2"
],
"homepage": "http://framework.zend.com/",
"require": {
"php": ">=5.5",
"zendframework/zendframework": "~2.5"
}
}
ZFTool создал проект с composer.json, адаптированным для ZF 2.5, а не ZF 2.4. Я не могу использовать его, так как у меня хостинг сервер с PHP 5.4
1 ответ
Я пришел со следующим решением. Я изменяю сгенерированный proj001/composer.json на 2.4 настройки
{
"name": "zendframework/skeleton-application",
"description": "Skeleton Application for ZF2",
"license": "BSD-3-Clause",
"keywords": [
"framework",
"zf2"
],
"homepage": "http://framework.zend.com/",
"require": {
"php": ">=5.4",
"zendframework/zendframework": "<=2.4.9",
"zendframework/zftool": "*",
"phpunit/phpunit": "4.7"
}
}
Сейчас, php composer.phar install
устанавливает старые пакеты, такие как zendframework/zendframework (2.4.9)