2 回答

TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超4個(gè)贊
看看這個(gè)例子,讓我知道這是否是您正在尋找的。
<?php
$arr = array(
array('id' => 1, 'parent' => 0),
array('id' => 2, 'parent' => 0),
array('id' => 3, 'parent' => 0),
array('id' => 4, 'parent' => 1),
array('id' => 5, 'parent' => 4),
array('id' => 6, 'parent' => 5));
$parents = [];
function find_parents($input, $id) {
global $parents, $arr;
if(is_array($input)) {
foreach($input as $k => $val) {
if($val['id'] == $id && $val['parent'] != 0) {
array_push($parents, $val['parent']);
find_parents($arr, $val['parent']);
}
}
}
}
find_parents($arr, 6);
print_r($parents);
作為6輸入將輸出
Array
(
[0] => 5
[1] => 4
[2] => 1
)
您可以使用遞歸,以便它可以使用到任何級別。無需限制級別。

TA貢獻(xiàn)1783條經(jīng)驗(yàn) 獲得超4個(gè)贊
find_parents($arr, $val['parent']);
在上面的行中,遞歸參數(shù)中的 $arr 應(yīng)該是 $input 數(shù)組變量。
- 2 回答
- 0 關(guān)注
- 275 瀏覽
添加回答
舉報(bào)