还有其他方法让 Laravel 重新加载环境变量吗?

2024-03-04

我在知名主机上有一个共享托管帐户。

我的 Laravel 网站已上传并大部分正常运行。但我必须改变环境。现在我无法让 Laravel 看到更改。

我知道这是常见问题。我尝试运行 artisan 命令来清除配置和缓存( php artisan config:cache & php artisan cache:clear ),但这失败并出现错误:

解析错误:语法错误,意外的“class”(T_CLASS),期望标识符(T_STRING)或变量(T_VARIABLE)或第33行/home4/cmatthewc/cvbaptistapp/artisan中的“{”或“$”

还有其他方法可以让 Laravel 从 env 刷新其缓存吗?

提前TY...


问题

问题在于php cli服务器的版本。 Laravel 5.6 期望您拥有PHP 7.1.3或更大。

更具体地说,您收到此错误的确切原因来自文档 http://php.net/manual/en/language.oop5.basic.php#language.oop5.basic.class.class:

从 PHP 5.5 开始,class 关键字也用于类名 解决。您可以获得包含完全限定名称的字符串 通过使用 ClassName::class 来创建 ClassName 类。这一点特别 对于命名空间类很有用。

如果你查看第 33 行artisan file https://github.com/laravel/laravel/blob/master/artisan#L33在您的项目根目录中:

$kernel = $app->make(Illuminate\Contracts\Console\Kernel::class);

由于当您通过 CLI 运行命令时服务器运行的是 5.4,PHP 不知道语法的含义,因此会抛出错误。

THE FIX

为了解决这个问题,您需要升级 PHP 版本。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

还有其他方法让 Laravel 重新加载环境变量吗? 的相关文章

随机推荐