3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Doge { private $name; protected $ham; public $yup; public static function factory() { $me = new static(); $me->name = "Cooper"; $me->ham = "Sandwich"; $me->yup = "nope"; return $me; } } class Dogeness extends Doge { public static function factoryOther() { $me = new static(); $me->name = "Cooper"; $me->ham = "Sandwich"; $me->yup = "nope"; return $me; } } $doge = Doge::factory(); var_dump($doge); $dogeness = Dogeness::factory(); var_dump($dogeness); $dogeness = Dogeness::factoryOther(); var_dump($dogeness);

preferences:
35.09 ms | 402 KiB | 5 Q