Case array
Public Function index () {
$data =array (
Array (' id ' = ' 1 ', ' name ' = ' clothes ', ' pid ' =>0),
Array (' id ' = ' 2 ', ' name ' = ' top ', ' pid ' =>1),
Array (' id ' = ' 3 ', ' name ' = ' pants ', ' pid ' =>1),
Array (' id ' = ' 4 ', ' name ' = ' shoes ', ' pid ' =>0),
Array (' id ' = ' 5 ', ' name ' = ' Men's shoes ', ' pid ' =>4),
Array (' id ' = ' 6 ', ' name ' = ' Women's Shoes ', ' pid ' =>4),
Array (' id ' = ' 7 ', ' name ' = ' shoes ', ' pid ' =>5),
Array (' id ' = ' 8 ', ' name ' = ' high heels ', ' pid ' =>6),
);
$res = $this->treetest ($data, 0);
Dump ($res);
}
Recursive functions
Public Function Treetest ($data, $id =0) {
$newarray =array ();
$array =array ();
if (Is_array ($data)) {
foreach ($data as $val) {
if ($val [' pid '] = = $id) {
$array = $this->treetest ($data, $val [' id ']);
$array && $val [' son '] = $array;
$newarray []= $val;
}
}
return $newarray;
}
Unlimited class PHP recursion