3v4l.org

run code in 500+ PHP versions simultaneously
<?php class Liquid { } class Juice extends Liquid { protected $apple; protected $orange; public function __construct($apple, $orange) { $this->apple = $apple; $this->orange = $orange; } public function __get($name) { return $this->$name; } } class Glass { protected $liquid; public function __construct() { $this->liquid = new Juice(3, 5); } public function __get($name) { return $name == "liquid" ? $this->liquid : false; } } $glass = new Glass(); var_dump(empty($glass->liquid)); var_dump(empty($glass->liquid->apple)); var_dump(empty(($glass->liquid->apple)));

preferences:
16.76 ms | 474 KiB | 4 Q