3v4l.org

run code in 300+ PHP versions simultaneously
<?php interface DoerInterface { public function doit(): self; } class MainDoer implements DoerInterface { public function doit(): self { echo 'main'; return $this; } } class ProxyDoer { private DoerInterface $decorated; public function __construct(DoerInterface $decorated) { $this->decorated = $decorated; } public function doit(): self { echo 'decorated'; return new self($this->decorated->doit()); } } $doer = new ProxyDoer(new MainDoer()); $doer->doit();
Output for git.master, git.master_jit, rfc.property-hooks
decoratedmain

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:
1123.78 ms | 405 KiB | 5 Q