i have class foo belongs bar.
within foo have:
public function bar(){ return $this->belongsto('app\models\bar'); } i have object $foo who's bar_id null.
within foo, have if statment:
if ($this->bar->id == 1){ echo "in if"; } not surprisingly getting trying property of non-object error. added call isset. code inside if never being evaluated because if false. new if looks like:
if(isset($this->bar) && $this->bar->id == 1){ echo "in if"; } after setting bar_id still not going if. when try print bar_id see value not null. why not going if?
you can make safer check:
if($this->bar instanceof \app\models\bar) { echo 'in if'; } this check if bar property set , according relation instantiated.
Comments
Post a Comment