2017-12-26 12 views
0

의 속성을 얻으려고 노력 나는 Laravel 5.5를 사용하고 난 다음 쿼리를 데 :설득력이 - 비 객체

   $instru = Instruments::where('name', '=', $coinArr[$key])->first(); 
       $i = Revision::where('id', '=', $instru->revisions_id)->first(); 
       if ($i === NULL) { ... 

을 설치하는 경우 $instru = NULL에 따라서 Revision 모델에 대한 쿼리가 작동하지 않습니다.

내 문제는 내가 var_dump($i) 인 경우 다음 오류가 발생하여 if-clause으로 실행되지 않습니다.

[2017-12-26 21:38:10] local.ERROR: Trying to get property of non-object 

이 사례를 어떻게 처리할까요?

답변

3

당신은 변경해야합니다 :

$i = Revision::where('id', '=', $instru->revisions_id)->first(); 

로 :

$i = $instru ? Revision::where('id', '=', $instru->revisions_id)->first() : null; 

이 어떤 경우에 $instru가 null이기 때문에 $instru가 null 때 $instru->revisions_id를 실행할 수 없습니다