macos — откуда php composer узнает версию php?

После успешного обновления моего тестового сайта (Debian Linux) до Zend Framework 3 я хочу повторить упражнение на OS X El Capitan с сервером 5.1.5. Первоначально здесь был установлен PHP 5.5.x, но я обновился до PHP 5.6.x и проверил это с помощью отображения phpinfo (). Однако, когда я пытаюсь запустить composer для установки модулей Zend Framework 3, он отвечает, что этого нельзя сделать, так как установлен PHP 5.5.x. Перезапуск и т. Д. Не имеет значения. Как композитор сообщает, какая версия PHP используется, и как я могу убедить его в том, что PHP 5.6.x установлен?

6

Решение

Когда я правильно понимаю, тогда ваш сервер уже PHP 5.6 и должен иметь возможность запускать ZF3, но CLI — это PHP 5.5, и Composer прекращает извлекать модули ZF3, потому что PHP слишком низкий, верно?

У вас есть один PHP для CLI и другой PHP для сервера. Когда ты бежишь composer он проверит версию PHP текущего запущенного PHP, используемого из CLI.

Мне приходят на ум два решения:

  • обновите ваш PHP, используемый на CLI или
  • присоединять --ignore-platform-reqs к вашей команде композитора.
    Это будет игнорировать проверки env и делать вид, что все в порядке.
    Имейте в виду, что это также отключит проверки расширений, которые могут понадобиться некоторым модулям.
1

Другие решения

Для тех, кто не знает, как изменить версию PHP для Композитор когда используешь WAMP на Windows:

Composer использует версию PHP, которую можно запустить из терминала. Таким образом, в Windows Composer (и, следовательно, терминал) знает версию PHP из своих систем. Path переменная.

Вы можете легко изменить значение внутри система -> Расширенные системные настройки -> переменные среды. Внутри Path переменная должна иметь значение типа C:\wamp64\bin\php\php5.6.25, После изменения значения требуется перезагрузка.

Вы всегда можете узнать версию PHP системы тока, запустив php -v внутри терминала.

1

По вопросам рекламы [email protected]