LaravelでArr.phpのsyntax errorが出る

2020年3月30日月曜日

Laravel

t f B! P L
LaravelのプロジェクトをapacheのWEBサーバを使ってブラウザで表示しようとすると、意図したとおりに表示されませんでした。apacheのログを見ると次のようなエラーが。

[Mon Mar 30 19:11:27.093989 2020] [:error] [pid 618] [client 192.168.100.12:61636] PHP Parse error:  syntax error, unexpected '=' in /path/to/project/vendor/laravel/framework/src/Illuminate/Support/Arr.php on line 384
Laravelのバージョンは5.8.36です。

$php artisan --version
Laravel Framework 5.8.36

原因

apacheが使用するPHPのバージョンがLaravel 5.8の動作条件(PHP >= 7.1.3)を満たしていませんでした。
phpinfo()
apacheが使用するPHPのバージョンを7.0から7.2に変更します。

$sudo a2dismod php7.0
Module php7.0 disabled.
To activate the new configuration, you need to run:
  systemctl restart apache2 

$sudo a2enmod php7.2
Considering dependency mpm_prefork for php7.2:
Considering conflict mpm_event for mpm_prefork:
Considering conflict mpm_worker for mpm_prefork:
Module mpm_prefork already enabled
Considering conflict php5 for php7.2:
Enabling module php7.2.
To activate the new configuration, you need to run:
  systemctl restart apache2

$sudo service apache2 restart
設定変更後、phpinfo()で状態を確認します。
phpinfo()
この修正で、Laravelのプロジェクトが問題なく表示されるようになりました。

このブログを検索

QooQ