的父级栏目数组中, 最后使用$newarr就行
不过这是建立在只有二级栏目的基础上,如果有三级栏目的话就还要麻烦些了
$newarr = array()
foreach ($a as $key => $value)
{
if($value['fID'] == 0)
{
$cid = $value['cID']
$newarr[$cid] = $value
unset($a[$key])
}
}
foreach ($a as $key => $value)
{
if($value['fID'] != 0)
{
$fid = $value['fID']
$newarr[$fid]['zilanmu'][] = $value
}
}
array_slice($arr,1,-1)截取出来再改参考例子,完整写法:
$ar = array(
array(1 =>'a', 2 =>50, 3 =>60, 4 =>'long', 5 =>'zzz', 6 =>'kkk', 7 =>'ooo'),
array(1 =>'b', 2 =>60, 3 =>70, 4 =>'king', 5 =>'lll', 6 =>'ttt', 7 =>'ppp'),
array(1 =>'c', 2 =>70, 3 =>80, 4 =>'quit', 5 =>'qqq', 6 =>'xxx', 7 =>'ccc'),
)
$kname = array('StaffId', 'Wage', 'Name', 'Work', 'Type')
function foo(&$v, $k, $kname) {
$v = array_combine($kname, array_slice($v, 1, -1))
}
array_walk($ar, 'foo', $kname)
print_r($ar)
Array
(
[0] =>Array
(
[StaffId] =>50
[Wage] =>60
[Name] =>long
[Work] =>zzz
[Type] =>kkk
)
[1] =>Array
(
[StaffId] =>60
[Wage] =>70
[Name] =>king
[Work] =>lll
[Type] =>ttt
)
[2] =>Array
(
[StaffId] =>70
[Wage] =>80
[Name] =>quit
[Work] =>qqq
[Type] =>xxx
)
)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)