Trying to get property of non-object
オブジェクトのプロパティなどが存在しない場合などに起きる
Trying to get property of non-object エラー
その時に便利なのが、optional関数
optional関数
<p>{{ optional($user->post)->title }}</p>
public function getItemId($title)
{
$post = Post::where('title', 'LIKE', "%$title%")->first();
return optional($post)->id;
}
date系で必須項目じゃない場合、formatを使っていると空の場合にエラーが起きる
@if($user->posted_date)
<p>{{ $user->posted_date->format('Y-m-d') }}</p>
@endif
if文を使うよりoptional関数を使うと簡潔で綺麗にコードが書ける
<p>{{ optional($user->posted_date)->format('Y-m-d') }}</p>
存在しない場合は、nullが返ってくるのでエラーも起きない