3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Promise { public $value; public function __construct($value) { $this->value = $value; } public function when(callable $callable) { $callable($this->value); } } $promise = new Promise(new StdClass); var_dump($promise); $promise->when(function(&$when) { $when = 42; }); var_dump($promise);

preferences:
55.63 ms | 402 KiB | 5 Q