Lumenで、「Parse error: syntax error, unexpected '?', expecting variable (T_VARIABLE) 」と出た時の対処方法
Lumenで、ローカル環境で問題なかったのに本番アップしたら「syntax error,」と出たので対処方法をメモします。
更新日: 2018.7.17公開日: 2018.7.6
エラー内容
下記のようなエラーが出ました。
利用しているのは、Lumenの5.6です。
Parse error: syntax error, unexpected '?', expecting variable (T_VARIABLE)
エラー画面としては、Lumenのエラー表示ではなくPHP標準のエラーなので、Lumenを実行する前の段階でエラーになっているようでした。
対策
ネットで解決方法を探していると、PHPのバージョンが7.0じゃないかというスレッドを見つけて、PHPのバージョンを7.1.4にあげたところ、無事解決しました。
よくよくドキュメントを見ると、Homesteadを使っている場合は、Lumen 5.6の場合はPHPが7.1.3以上じゃないとダメとありました。
However, if you are not using Homestead, you will need to make sure your server meets the following requirements:
PHP >= 7.1.3
OpenSSL PHP Extension
PDO PHP Extension
Mbstring PHP Extension
Installation | Lumen
公開したサーバーはレンタルサーバーなのでHomesteadは使っていないはずなんですが、サーバー側の仮想環境の影響でしょうか。
わかってしまえば単純なところなんですが、同じような状況になった時の備忘録として。