vagrant — есть ли разница при запуске Composer в разных версиях PHP?

У меня есть машина Vagrant с актуальной версией PHP, на которой я хочу запустить мой сервер, но локально я использую более новую версию PHP.
Обновление Composer локально просто экономит так много времени, а не обновляет его на виртуальной машине через SSH.

Итак, мой вопрос: это влияет на файлы поставщика, когда composer install или же update вызывается из разных версий PHP?

3

Решение

Версия PHP, используемая при обновлении зависимостей, влияет на используемые пакеты. Пакеты могут определять требования для определенной версии PHP.

Распространенным требованием является наличие PHP 5.4 или 5.5, когда пакет использует функции указанных версий, или PHP 5.3.3 или PHP 5.3.27, потому что пакет требует определенных исправлений.

Композитор будет жаловаться на невозможность выполнить composer install если версия PHP, используемая при выполнении этой команды, не в состоянии выполнить все требования к версии PHP, указанные в файле блокировки.

Бег composer update с более старой версией PHP, чем composer install вероятно, будет работать в большинстве случаев. Однако рекомендуется использовать ту же версию PHP.

Также: использование одинаковых обязательных расширений во всех версиях PHP также необходимо для проверки требований.

Обратите внимание, что Composer требует, чтобы на целевой платформе присутствовала данная версия или расширение PHP, даже если PHP командной строки, выполняющий команду Composer, не выполняет их, но эта функция еще не реализована. Таким образом, нет способа переопределить локальную версию PHP той, которая присутствует в целевой среде.

4

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

Других решений пока нет …