Я и мой коллега пытаются использовать локальный репозиторий git для нашего проекта Laravel. Я использую Ubuntu с PHP 5.5.9-1ubuntu4.9, и он использует Debian с PHP 5.4.39.Laravel + git, авторы имеют другую среду
Когда я вытащил свою зафиксированную версию, я получаю сообщение об ошибке при попытке запустить composer update
:
[email protected]:/var/www/frontend$ composer install
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Nothing to install or update
Generating autoload files
PHP Fatal error: Class 'Illuminate\Support\Arr' not found in /var/www/frontend/vendor/laravel/framework/src/Illuminate/Support/helpers.php on line 182
Script php artisan clear-compiled handling the post-install-cmd event returned with an error [RuntimeException]
Error Output: PHP Fatal error: Class 'Illuminate\Support\Arr' not found in /var/www/frontend/vendor/laravel/framework/src/Illuminate/Support/helpers.php on line 182
У нас есть папка поставщика на мерзавца, так как не имея это не вариант для нас.
Я думаю, проблема в разных версиях PHP. Есть ли способ настроить версию PHP вручную, поэтому композитор получает правильные зависимости?
Я не рекомендовал бы работать на проект с двумя разными версиями PHP. Это сломает ситуацию долгосрочно. Простой пример: если вы запустите «композиторное обновление» и добавьте версию библиотеки, для которой требуется PHP 5.5 и выше, это обновление не будет выполняться на ваших коллегах PHP. Всегда используйте версию PHP, которая должна использоваться в производстве! Используйте его и на всех машинах разработки - это уменьшит неприятные сюрпризы. – Sven