Kısa bir süre önce json verilerini görüntülemek için JSTREE kullanmaya başladım (bunu örnek kodumda bir dizi olarak gösteriyorum). Ancak, bazı düğümler tekrarlanıyor. Düğümün zaten bir çocuk düğümü olup olmadığını kontrol etmek için bir If döngüsü eklemeyi düşünüyordum ama nasıl yapacağımı bilmiyorum. Ayrıca benim kodumun da birçok döngüden dolayı iyi performans göstermediğini düşünüyorum. Ben bir PHP acemi değilim bu yüzden bir dizi üzerinden tekrarlamak için daha hızlı bir yol olabilir eğer emin değilim. İşte benim kodum.JSTree yinelenen düğümleri gösteriyor
$relation = array(
"parent"=>array("item"=>array("cs","ls")),
"cs"=>array("item"=>array("cs_1")),
"ls"=>array("item"=>array("ls_1")),
"cs_1"=>array("item"=>array("cs_1_1"))
);
$tree = array();
$i=0;
foreach($relation as $key_parent=>$value_parent) {
#$children = array_keys($value_parent);
$tree[$i++] = array('id'=>$key_parent,'text'=>$key_parent,'state'=>array('opened'=>true),'parent'=>'#');
foreach($value_parent['item'] as $key_child_1=>$value_child_1) {
$tree[$i++]= array('id'=>$value_child_1,'text'=>$value_child_1,'state'=>array('opened'=>true),'parent'=>$key_parent);
}
}