• 技术文章 >php框架 >Laravel

    非常有用的Laravel optional辅助函数!

    藏色散人藏色散人2021-07-14 08:59:44转载156

    在 Laravel 新版本当中,有一个非常有用的辅助方法:optional()

    这个方法的应用场景是什么呢?其实如果你多写代码的话,经常会遇到类似下面的报错信息:

    Call to a member function on null object...

    这其实是在我们的代码中存在着某个对象为空,所以在我们调用方法或者获取属性的时候就会报出以上错误信息。比如我们举个例子:

    User 的体系中,我们也有 Profile 的 Model 文件,而一个 User 拥有一个 ProfileProfile 中包含用户的地址信息)

    public function profile(){
       return $this->hasOne(Profile::class);
    }

    然后在我们 User 的信息页面,我们希望通过下面的代码获取 User 的地址:

    $user->profile->address;

    如果在数据库中,我们没有该 User 对应的 Profile,这个时候就会出现文章开始说到的类似错误了。

    所以,这个时候,optional() 就可以派上用场了

    我们只需要这样获取用户的地址信息就好:

    optional$user->profile)->address

    这个时候,即使 profile 为空值(null),这一行代码也不会报错,而是会显示一个空的字符串出来。
    是不是非常有用!有了 optional() 这个辅助函数之后,在很多类似的代码中,在你不确定是否该对象会为 null 的时候,就可以加上 optional() 来做保险了!

    以上就是非常有用的Laravel optional辅助函数!的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:segmentfault,如有侵犯,请联系admin@php.cn删除
    专题推荐:php laravel
    上一篇:分享一个好用的Laravel 扩展(laravel-hprose) 下一篇:详解如何使用ETag和条件标头进行缓存
    VIP会员

    相关文章推荐

    • Laravel 5 IDE Helper如何安装• Centos7下如何搭建Laravel环境(非docker)• 一文介绍Laravel Ignition的一切• Laravel如何使用Observer实现日志管理模块• 分享一个好用的Laravel 扩展(laravel-hprose)

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网