0
腓遞歸函數我有一個數組$樹這種結構:爲樹狀
Array
(
[0] => Array
(
['fichier'] => 'test.xml'
['classes'] => Array
(
[0] => Array
(
['Id'] => '10'
['IdParent'] => 'L'
)
[1] => Array
(
['Id'] => '10-01'
['IdParent'] => '10'
)
...
)
)
[1] => Array
(
['fichier'] => 'test2.xml'
['classes'] => Array
(
[0] => Array
(
['Id'] => '10'
['IdParent'] => 'L'
)
[1] => Array
(
['Id'] => '10-02'
['IdParent'] => '10'
)
...
)
)
)
[2] => Array
(
...
)
...
)
所以結構像
L L ...
10 10
10-01 10-02
10-01-01 10-02-02
10-01-02 10-02-03
,我嘗試做一個TreeView,如:
L
-> 10
-> 10-01
-> 10-01-01
-> 10-01-02
-> 10-02
-> 10-02-02
-> 10-02-03
我寫了一個遞歸函數:
function treeview($tree, $indiceTree, &$prec, $id = 'ICM'){
$indice = 0;
for ($i = ($indiceTree-sizeof($tree)); $i < sizeof($tree); $i++) {
for ($j = 0; $j < sizeof($tree[$i]['classes']); $j++) {
if($tree[$i]['classes'][$j]['IdParent']==$id) {
if (strpos($prec,$tree[$i]['classes'][$j]['Id']) == false) {
echo $tree[$i]['classes'][$j]['Id']; echo "<br><br>";
$prec .= ";".$tree[$i]['classes'][$j]['Id'];
break;
}
treeview($tree, $indiceTree+$indice,$prec, $tree[$i]['classes'][$j]['Id']);
break;
}
}
$indice++;
}
}
問題是這個功能永遠不會停止。我的意思是顯示結果不錯,但只有當PHP超時時才顯示: 致命錯誤:超過60秒的最大執行時間
初始數組($ tree)有142個元素,所以執行過長用於Web應用程序。 完成數組時,函數似乎永不停止。 如果你能幫助我使用這個功能。謝謝你在前進
確實感謝這個功能幫助我!看起來相似。 Thks – Ted 2014-10-29 15:30:02
如果這個功能對你有幫助,然後投票給我。 – 2014-10-30 07:16:02