php辅助框架,【PHP开发框架】Laravel框架中辅助函数:optional ()函数的介绍
laravel框架中的輔助函數(shù)有很多,那么,在 Laravel 新版本中又有什么非常好用的輔助函數(shù)呢?接下來(lái)的這篇文章中,ki4網(wǎng)將給大家介紹一個(gè)非常有用的輔助方法:optional()函數(shù),這個(gè)函數(shù)的用處到底是什么呢?就讓我們來(lái)具體的看一看吧。
這個(gè)方法的應(yīng)用場(chǎng)景是什么呢?其實(shí)如果你多寫(xiě)代碼的話,經(jīng)常會(huì)遇到類似下面的報(bào)錯(cuò)信息:
Call to a member function on null object...
這其實(shí)是在我們的代碼中存在著某個(gè)對(duì)象為空,所以在我們調(diào)用方法或者獲取屬性的時(shí)候就會(huì)報(bào)出以上錯(cuò)誤信息。比如我們舉個(gè)例子:
在 User 的體系中,我們也有 Profile 的 Model 文件,而一個(gè) User 擁有一個(gè) Profile (Profile 中包含用戶的地址信息)
public function profile(){
return $this->hasOne(Profile::class);
}
然后在我們 User 的信息頁(yè)面,我們希望通過(guò)下面的代碼獲取 User 的地址:
$user->profile->address;
如果在數(shù)據(jù)庫(kù)中,我們沒(méi)有該 User 對(duì)應(yīng)的 Profile,這個(gè)時(shí)候就會(huì)出現(xiàn)文章開(kāi)始說(shuō)到的類似錯(cuò)誤了。
所以,這個(gè)時(shí)候,optional() 就可以派上用場(chǎng)了
我們只需要這樣獲取用戶的地址信息就好:
optional$user->profile)->address
這個(gè)時(shí)候,即使 profile 為空值(null),這一行代碼也不會(huì)報(bào)錯(cuò),而是會(huì)顯示一個(gè)空的字符串出來(lái)。
是不是非常有用!有了 optional() 這個(gè)輔助函數(shù)之后,在很多類似的代碼中,在你不確定是否該對(duì)象會(huì)為 null 的時(shí)候,就可以加上 optional() 來(lái)以防萬(wàn)一。
以上就是本篇文章的全部?jī)?nèi)容了,更多l(xiāng)aravel內(nèi)容請(qǐng)關(guān)注laravel框架入門(mén)教程。
相關(guān)文章推薦:
Laravel框架中常用的輔助函數(shù)的介紹
Laravel5.5新特性:preset命令的解析
相關(guān)課程推薦:
2017年最新的五個(gè)Laravel視頻教程推薦
總結(jié)
以上是生活随笔為你收集整理的php辅助框架,【PHP开发框架】Laravel框架中辅助函数:optional ()函数的介绍的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: vim配置python开发环境_GitH
- 下一篇: 动态规划算法php,php算法学习之动态