在会话 .php 第 127 行中:找不到类“Str”

In session.php line 127: Class 'Str' not found

提问人:Iam-kelvin 提问时间:11/17/2020 最后编辑:Tim LewisIam-kelvin 更新时间:11/18/2020 访问量:588

问:

我正在尝试升级 Laravel 项目。我在线下载到版本 8,但在到达版本 6 时,我不断得到:

在会话 .php 第 127 行中:找不到类“Str”

在我的命令行中。请问我做错了什么。

这是第 127 行

Str::slug(env('APP_NAME', 'laravel'), '_').'_session'
PHP 的 Laravel Laravel-6

评论

1赞 brombeer 11/17/2020
你?use Illuminate\Support\Str;
0赞 Nico Haase 11/18/2020
请分享更多详细信息,以及您的调试尝试
0赞 Iam-kelvin 11/18/2020
是的,我使用了“使用 Illuminate\Support\Str;”

答:

2赞 user12789707 11/17/2020 #1

我认为你需要添加

use Illuminate\Support\Str;

添加到配置文件的顶部。session.php

在 5.0 版本中,这从来都不是一回事,而是在 Laravel 6 中引入的。

引用:

拉拉维尔 5:https://github.com/laravel/laravel/blob/5.0/config/session.php

拉拉维尔 6:https://github.com/laravel/laravel/blob/6.x/config/session.php

评论

0赞 Iam-kelvin 11/18/2020
我已经这样做了,遇到了另一个错误 - 在 PackageManifest.php 第 122 行:未定义的索引:名称
0赞 Iam-kelvin 11/18/2020
我试过这个,它工作 stackoverflow.com/a/64663892/14261398
0赞 tameemahmad shahzad 11/18/2020 #2

出现此错误是因为 laravel 找不到 try this 的命名空间。Str

在文件顶部写下这一行或简单地use Illuminate\Support\Str\Str

评论

0赞 Iam-kelvin 11/18/2020
我已经这样做了。PackageManefest 弹出了另一个错误。我还添加了 str 别名