Использование Laravel на php 7.0

Я установил Laravel 5.5 и получаю ту же ошибку, документация говорит об этом:

  • PHP> = 7.0.0
  • Расширение OpenSSL PHP
  • PDO PHP расширение
  • Расширение Mbstring PHP
  • Расширение Tokenizer PHP
  • Расширение XML PHP

Я побежал: $ php artisan --version` $ Laravel Framework 5.5.42

и я получаю эту ошибку:

Symfony \ Component \ Debug \ Exception \ FatalThrowableError (E_PARSE) Parse error: syntax error, unexpected '?', expecting variable (T_VARIABLE)

Документация неверна? Я использую: https://laravel.com/docs/5.5/installation Мой сервер может использовать только PHP 7.0. Не 7.1. Разве нет возможности запустить Laravel на 7 больше?

Я устанавливаю через композитор.

Есть ли способ скачать совместимую версию с 7.0?

3 ответа

Если у вас PHP 5.5 (на самом деле 5.5.9 или выше), вы должны использовать Laravel 5.2.

Если у вас PHP 7.0, вы можете использовать Laravel 5.5.

Ошибка, о которой вы упомянули, заключается в том, что вы используете PHP 5.5, который не поддерживает оператор объединения нулей в PHP 7 (??), и он используется где-то в коде Laravel.

Как вы сказали, ваш сервер поддерживает PHP 7.0, в вашей системе может быть установлено более одной версии PHP. Проверьте версию PHP работает php --version,

Это была проблема со стеком Symfony Translation, мне пришлось отключить на данный момент, также я понизил пакет углерода, чтобы он заработал, не знаю почему. Он имеет некоторый код php7.1.

Проблема может заключаться в том, что версия PHP для командной строки отличается от версии PHP для Apache. Бежать php --version и убедитесь, что вы используете PHP 7.0.0 или выше.

Laravel 5.5. * Не имеет проблем с работой на PHP 7.0.*. В настоящее время у меня есть проект под управлением Laravel 5.5.43 на PHP 7.0.15, и эта проблема не возникает.

Если версия PHP для командной строки не устарела или у вас есть доступ к нескольким версиям PHP, вам следует обратиться за помощью к вашему хостинг-провайдеру. Вы также можете запустить команду, подобную следующей, чтобы увидеть, можете ли вы получить доступ к другой версии PHP:

locate bin/php

Вышесказанное может дать вам представление о месте установки. Например, я вижу три разные версии PHP, но версия по умолчанию (/usr/bin/php) 7.0.15:

/opt/cpanel/ea-php56/root/usr/bin/php
/opt/cpanel/ea-php70/root/usr/bin/php
/opt/cpanel/ea-php71/root/usr/bin/php
/usr/bin/php
Другие вопросы по тегам