<?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, '4');
$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($navitems);
- Output for git.master, git.master_jit, rfc.property-hooks
- bool(false)
<ul></ul>
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:
64.37 ms | 401 KiB | 8 Q