3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php $simpsons[0] = array("name"=>"Abe","parent"=>-1); $simpsons[1] = array("name"=>"Homer","parent"=>0); // Homer's parent is Abe $simpsons[2] = array("name"=>"Bart","parent"=>1); // Bart's parent is Homer $simpsons[3] = array("name"=>"Lisa","parent"=>1); // Lisa's parent is Homer $simpsons[4] = array("name"=>"Maggie","parent"=>1); // Maggie's parent is Homer function get_children($parent) { global $simpsons; reset($simpsons); foreach ($simpsons as $index=>$onesimpson) { if ($onesimpson["parent"]==$parent) { echo "$onesimpson[name] is a child of ".$simpsons[$parent]["name"].".<br />\n"; get_children($index); } } } get_children(0); ?>
Output for 5.2.1 - 5.6.28, hhvm-3.10.0 - 3.12.0, 7.0.0 - 7.1.0
Homer is a child of Abe.<br /> Bart is a child of Homer.<br /> Lisa is a child of Homer.<br /> Maggie is a child of Homer.<br />
Output for 4.3.0 - 5.2.0
Homer is a child of Abe.<br /> Bart is a child of Homer.<br />