Sunday, 1 September 2013

How to multilevel numbering with PHP?

How to multilevel numbering with PHP?

Here is my code :
$datas = array(
array('id' => 1, 'parent' => 0, 'name' => 'Page'),
array('id' => 2, 'parent' => 1, 'name' => 'Page'),
array('id' => 3, 'parent' => 2, 'name' => 'Page'),
array('id' => 4, 'parent' => 3, 'name' => 'Page'),
array('id' => 5, 'parent' => 3, 'name' => 'Page'),
array('id' => 6, 'parent' => 1, 'name' => 'Page'),
array('id' => 7, 'parent' => 6, 'name' => 'Page'),
array('id' => 8, 'parent' => 0, 'name' => 'Page'),
array('id' => 9, 'parent' => 0, 'name' => 'Page'),
array('id' => 10, 'parent' => 9, 'name' => 'Page'),
array('id' => 11, 'parent' => 9, 'name' => 'Page'),
array('id' => 12, 'parent' => 11, 'name' => 'Page'),
);
//Recursive function
function generatePageTree($datas, $parent = 0, $limit=0){
$tree = '<ul>';
for($i=0, $ni=count($datas); $i < $ni; $i++){
if($datas[$i]['parent'] == $parent){
$tree .= '<li>';
$tree .= $datas[$i]['name'];
$tree .= generatePageTree($datas, $datas[$i]['id'], $limit++);
$tree .= '</li>';
}
}
$tree .= '</ul>';
return $tree;
}
echo(generatePageTree($datas));
?>
Please help me

No comments:

Post a Comment