3v4l.org

run code in 300+ PHP versions simultaneously
<?php $a = [0,1,2,null,3]; foreach($a as $k => $v){ echo $v; } echo "\n"; class Test implements Iterator { private $p = 0; private $a = [0,1,2,null,3]; public function __construct() { array_unshift( $this->a, 8 ); } function rewind() { $this->p = 0; } function current() { return $this->a[$this->p]; } function key() { return $this->p; } function next() { ++$this->p; } function valid() { return isset( $this->a[$this->p] ); } } $it = new Test; foreach($it as $k => $v) { echo $v; } ?>
Output for git.master, git.master_jit, rfc.property-hooks
0123 Deprecated: Return type of Test::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /in/jSlB9 on line 21 Deprecated: Return type of Test::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /in/jSlB9 on line 29 Deprecated: Return type of Test::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /in/jSlB9 on line 25 Deprecated: Return type of Test::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /in/jSlB9 on line 33 Deprecated: Return type of Test::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /in/jSlB9 on line 17 8012

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:
32.31 ms | 403 KiB | 8 Q