3v4l.org

run code in 300+ PHP versions simultaneously
<?php final class Mutable { private $x; public function __construct(int $x) { $this->x = $x; } public function setX(int $x): void { $this->x = $x; } public function x(): int { return $this->x; } } final class User { private $m; public function __construct(Mutable $m) { $this->m = $m; } public function x(): void { echo "{$this->m}\n"; } } $m = new Mutable(42); $u = new User($m); $u->x(); $m->setX(-1); $u->x();
Output for git.master, git.master_jit, rfc.property-hooks
Fatal error: Uncaught Error: Object of class Mutable could not be converted to string in /in/FLpRP:27 Stack trace: #0 /in/FLpRP(34): User->x() #1 {main} thrown in /in/FLpRP on line 27
Process exited with code 255.

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
38.4 ms | 401 KiB | 8 Q