3v4l.org

run code in 300+ PHP versions simultaneously
<?php readonly class ImmutableBadNumberGenerator { public function __construct(private readonly int $i) {} public function generate(): int { static $j = 1; ++$j; return $this->i + $j; } } $o = new ImmutableBadNumberGenerator(10); var_dump($o->generate()); var_dump($o->generate()); var_dump($o->generate());
Output for 8.2.1
int(12) int(13) int(14)
Output for 8.1.0 - 8.1.13
Parse error: syntax error, unexpected token "readonly", expecting end of file in /in/A2Lbs on line 3
Process exited with code 255.
Output for 8.0.1 - 8.0.26
Parse error: syntax error, unexpected token "class" in /in/A2Lbs on line 3
Process exited with code 255.

preferences:
179.87 ms | 1395 KiB | 47 Q