0
我正在创建一个多维数组以匹配公司的层次结构。我问数据库的下线(保存在一个单独的表),并开始循环它。 目前我只为最高等级和他下面的人做这个。我知道他下面有6个人,因此最终结果只显示一个。当我在循环中每次完成var_dump $时,我都会在children-array中看到不同的值。 (他改写而不是加起来)。PHP - 多维数组覆盖第一个值
我都试过array_push这种方法,我希望我已经很清楚,因为我可能没有(抱歉)。
代码:
foreach ($downpositions as $downposition) {
// start position
if ($downposition['PositionsDownposition']['positionsdownpositions_rel_position'] == 1) {
// check downline only on first level
if ($downposition['PositionsDownposition']['positionsdownpositions_level'] == 1) {
foreach ($downpositions as $mother) {
if ($mother['PositionsDownposition']['positionsdownpositions_rel_downposition'] == 1) {
// format it
$node = array(
'id' => $downposition['PositionsDownposition']['positionsdownpositions_id'],
'name' => $downposition['PositionsDownposition']['positionsdownpositions_rel_position'],
'children' => array()
);
$complete = array(
'id' => $mother['PositionsDownposition']['positionsdownpositions_id'],
'name' => $mother['PositionsDownposition']['positionsdownpositions_rel_position'],
'children' => array()
);
// add up to array
$complete['children'][] = $node;
}
}
}
}
}