我在知名主机上有一个共享的主机帐户。
我已经上传了我的Laravel网站并可以正常运行。但是我不得不做一个环境改变。现在我无法让Laravel看到更改。
我知道这是常见问题。我尝试运行artisan命令以清除配置和缓存(php artisan config:cache和php artisan cache:clear),但这失败并显示错误:
解析错误:语法错误,意外的“类”(T_CLASS),预期的标识符(T_STRING)或变量(T_VARIABLE)或第33行的/ home4 / cmatthewc / cvbaptistapp / artisan中的“ {”或“ $” >
还有其他方法可以使Laravel从env刷新其缓存吗?
提前TY ...
答案 0 :(得分:1)
问题出在服务器的php cli
版本中。 Laravel 5.6期望您的PHP 7.1.3
或更高。
更具体地说,您从documentation中得到此错误的确切原因:
从PHP 5.5开始,class关键字也用于类名 解析度。您可以获得包含完全限定名称的字符串 通过使用ClassName :: class获得ClassName类。特别是 对于命名空间类有用。
如果您查看项目根目录artisan
file中的第33行:
$kernel = $app->make(Illuminate\Contracts\Console\Kernel::class);
由于当您通过CLI运行命令时服务器正在运行5.4,因此PHP不了解语法的含义,因此会引发错误。
要解决此问题,您需要升级PHP版本。