3v4l.org

run code in 300+ PHP versions simultaneously
<?php function func(&$data) { foreach ($data as $key => $value) { if (is_array($value)) { func($data[$key]); } } } $data = [ ['zero' => [0]], ['one' => [1]], ]; debug_zval_dump($data); //refcount=2 for ($i = 0; $i < 10000; $i++) func($data); debug_zval_dump($data); //refcount=3
Output for git.master, git.master_jit, rfc.property-hooks
array(2) refcount(3){ [0]=> array(1) refcount(1){ ["zero"]=> array(1) refcount(1){ [0]=> int(0) } } [1]=> array(1) refcount(1){ ["one"]=> array(1) refcount(1){ [0]=> int(1) } } } array(2) refcount(2){ [0]=> reference refcount(1) { array(1) refcount(1){ ["zero"]=> reference refcount(1) { array(1) refcount(2){ [0]=> int(0) } } } } [1]=> reference refcount(1) { array(1) refcount(1){ ["one"]=> reference refcount(1) { array(1) refcount(2){ [0]=> int(1) } } } } }

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:
39.31 ms | 402 KiB | 8 Q