我有一个foo
属于bar
.
在foo
我有:
public function bar(){
return $this->belongsTo('App\Models\Bar');
}
我有一个对象$foo
是。bar_id
null
在 内Foo
,我有一个 if 语句:
if ($this->bar->id == 1){ echo "in if"; }
毫不奇怪,我遇到了Trying to get property of non-object
错误。所以我添加了对isset
. 但是现在 if 中的代码永远不会被评估,因为 if 总是假的。我的新 if 看起来像:
if(isset($this->bar) && $this->bar->id == 1){ echo "in if"; }
设置后bar_id
我仍然没有进入if
. 当我尝试时,print bar_id
我看到该值不为空。为什么我不进入这个如果?