3v4l.org

run code in 500+ PHP versions simultaneously
<?php class Notify { protected int $id; public function __set($name, $value) { echo __METHOD__ . PHP_EOL; if (property_exists($this, $name)) { $this->{$name} = $value; } return $this; } } $obj = new Notify(); $obj->id = 1; var_dump($obj);
Output for 8.0.1 - 8.0.30, 8.1.0 - 8.1.34, 8.2.0 - 8.2.32, 8.3.0 - 8.3.33, 8.4.1 - 8.4.24, 8.5.0 - 8.5.9
Notify::__set object(Notify)#1 (1) { ["id":protected]=> int(1) }

preferences:
93.56 ms | 1150 KiB | 4 Q