Rumah >rangka kerja php >Laravel >非常有用的Laravel optional辅助函数!

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

藏色散人
藏色散人ke hadapan
2021-07-13 14:42:522256semak imbas

在 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() 来做保险了!

Atas ialah kandungan terperinci 非常有用的Laravel optional辅助函数!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:segmentfault.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam