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

解决办法 ;

       $info = UserModel::where($condidtion)->first();
        if($info)
        {
            return $info->toArray();
        }
        return [];

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


update at: 2020-04-06

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

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

 $info = UserModel::where($condidtion)->first();
return !is_null($info) ? $info->toArray : [];

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

标签: none

评论已关闭