类名必须是有效的对象或字符串Laravel 5.7

时间:2019-02-12 16:51:05

标签: php laravel

我想保存一条新记录,但是Laravel给了我这个错误类名必须可以是对象或字符串。我的代码;

Advanced Editor
  

注意:我的PHP版本是最新的,即 7.1.9

3 个答案:

答案 0 :(得分:1)

我假设您创建了一个输入字段,其中包含用户ID的名称,而您尝试使用

进行访问

$request->Auth::id()

对于用户ID为1的用户,我假设您要传递请求项$ request-> 1。

这不能作为Auth :: id()作为文字传递。访问请求对象时,抱怨说“嘿,我不能接受类作为变量名,请停止!

如果这实际上是您要尝试执行的操作,并且Auth :: id()有效(我从未使用过,我通常使用Auth :: user()-> id),那么您必须通过括号内的函数是这样的:

$request->(Auth::id())

答案 1 :(得分:1)

动态对象密钥的正确语法为:

    $question->user_id = $request->{Auth::id()};

或者,如果您只想要身份验证ID,则为

    $question->user_id = Auth::id();

答案 2 :(得分:0)

由于 aynber 整理了我的问题,我已经解决了这个问题。我已将$question->user_id = $request->Auth::id();更改为$question->user_id = Auth::id();