3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php $menu = array( array(1,3,'Wurm 1.1', 2, 10), array(2,6,'Vogel 2.1', 2, 30), array(3,0,'Tiger 1', 1, 10), array(4,6,'Hund 2.2', 2, 40), array(5,3,'Katze 1.2', 2, 11), array(6,0,'Pferd 2', 1, 20), array(7,1,'Baer 1.1.1', 3, 0), array(8,3,'Schwein 1.3', 2, 12), array(9,4,'Esel 2.2.1', 3, 0), ); // Algorithmus hier $result = array(); $target = array( array(9,4,'Esel 2.2.1', 3, 0), ); var_dump($result == $target); $navitems = array( array( 1, // Menuid 3, // parentid 'Wurm 1.1', // title 2, // level 10 // sortid ), array( 2, // Menuid 6, // parentid 'Vogel 2.1', // title 2, // level 30 // sortid ), array( 3, // Menuid 0, // parentid 'Tiger 1', // title 1, // level 10 // sortid ), array( 4, // Menuid 6, // parentid 'Hund 2.2', // title 2, // level 40 // sortid ), array( 5, // Menuid 3, // parentid 'Katze 1.2', // title 2, // level 11 // sortid ), array( 6, // Menuid 0, // parentid 'Pferd 2', // title 1, // level 20 // sortid ), array( 7, // Menuid 1, // parentid 'Baer 1.1.1', // title 3, // level 0 // sortid ), array( 8, // Menuid 3, // parentid 'Schwein 1.3', // title 2, // level 12 // sortid ), array( 9, // Menuid 4, // parentid 'Esel 2.2.1', // title 3, // level 0 // sortid ) ); function array_orderby() { $args = func_get_args(); $data = array_shift($args); foreach ($args as $n => $field) { if (is_string($field)) { $tmp = array(); foreach ($data as $key => $row) $tmp[$key] = $row[$field]; $args[$n] = $tmp; } } $args[] = &$data; call_user_func_array('array_multisort', $args); return array_pop($args); } function listItems($items, $level=0, $child=false, $pid=0) { array_orderby($items, 'sortid'); $rest = ''; foreach($items as $item) { if ($item[3] != $level) { continue; } if ($child == false) { $rest .= '<li>'. $item[2] .'<ul>'. listItems($items, $level+1, true, $item[0]) .'</ul></li>'; } else { if ($pid == $item[1]) { $rest .= '<li>'. $item[2] .'<ul>'. listItems($items, $level+1, true, $item[0]) .'</ul></li>'; } } } return '<ul>' . $rest . '</ul>'; } echo listItems();
based on PTuRc
Output for 7.1.0 - 7.3.0beta1
bool(false) Fatal error: Uncaught ArgumentCountError: Too few arguments to function listItems(), 0 passed in /in/eHESA on line 136 and at least 1 expected in /in/eHESA:114 Stack trace: #0 /in/eHESA(136): listItems() #1 {main} thrown in /in/eHESA on line 114
Process exited with code 255.
Output for 5.1.0 - 5.2.17, 5.3.4 - 7.0.20
bool(false) Warning: Missing argument 1 for listItems(), called in /in/eHESA on line 136 and defined in /in/eHESA on line 114 Notice: Undefined variable: items in /in/eHESA on line 115 Warning: Invalid argument supplied for foreach() in /in/eHESA on line 101 Warning: array_multisort(): Argument #2 is expected to be an array or a sort flag in /in/eHESA on line 109 Notice: Undefined variable: items in /in/eHESA on line 119 Warning: Invalid argument supplied for foreach() in /in/eHESA on line 119 <ul></ul>
Output for 5.3.0 - 5.3.3
bool(false) Warning: Missing argument 1 for listItems(), called in /in/eHESA on line 136 and defined in /in/eHESA on line 114 Notice: Undefined variable: items in /in/eHESA on line 115 Warning: Invalid argument supplied for foreach() in /in/eHESA on line 101 Warning: Parameter 1 to array_multisort() expected to be a reference, value given in /in/eHESA on line 109 Notice: Undefined variable: items in /in/eHESA on line 119 Warning: Invalid argument supplied for foreach() in /in/eHESA on line 119 <ul></ul>
Output for 5.0.0 - 5.0.5
bool(false) Warning: Missing argument 1 for listItems() in /in/eHESA on line 114 Warning: Invalid argument supplied for foreach() in /in/eHESA on line 101 Warning: array_multisort(): Argument #2 is expected to be an array or a sort flag in /in/eHESA on line 109 Warning: Invalid argument supplied for foreach() in /in/eHESA on line 119 <ul></ul>
Output for 4.3.2 - 4.3.10, 4.4.0 - 4.4.9
bool(false) Warning: Missing argument 1 for listitems() in /in/eHESA on line 114 Warning: Invalid argument supplied for foreach() in /in/eHESA on line 101 Warning: array_multisort(): Argument #2 is expected to be an array or a sort flag in /in/eHESA on line 109 Warning: Invalid argument supplied for foreach() in /in/eHESA on line 119 <ul></ul>
Output for 4.3.11
bool(false) Warning: Missing argument 1 for listitems() in /in/eHESA on line 114 Warning: array_multisort(): Argument #2 is expected to be an array or a sort flag in /in/eHESA on line 109 <ul></ul>
Output for 4.3.0 - 4.3.1
bool(false) Warning: Missing argument 1 for listitems() in /in/eHESA on line 114 Warning: Invalid argument supplied for foreach() in /in/eHESA on line 101 Warning: array_multisort() [http://www.php.net/function.array-multisort]: Argument #2 is expected to be an array or a sort flag in /in/eHESA on line 109 Warning: Invalid argument supplied for foreach() in /in/eHESA on line 119 <ul></ul>