laravel 中使用first()->toArray()报错误

2020-06-23 15:30:12 浏览数 (1)

$info UserCModel::where($condidtion)->first()->toArray(); 报 "Call to a member function toArray() on null"错误

解决办法 ;

代码语言:javascript复制
       $info = UserModel::where($condidtion)->first();
        return $info;
        if($info)
        {
            return $info->toArray();
        }
        return [];

原因:在未找到的情况下返回为null,而nul是不能转为array的。


update at: 2020-04-06

回过头来补充一下,当初出现这个问题还是因为习惯了用tp3的方式去写laraveL代码,才导致了这个小白问题的出现。

在lavarel中使用更多的是集合的去进行数据的处理,这样也更方便,比如前面那个问题,更有效的判断数据是否为空应该是:

代码语言:javascript复制
 $info = UserModel::where($condidtion)->first();
      
        if($info->isNotEmpty())
        {
            return $info->toArray();
        }
        return [];

熟悉laravel这种集合方式去处理数据后再去写tp6这种类laravel框架,上手的成本就会很低了。

0 人点赞