In PHP, I get an array of objects. Each object is either a parent or descendant. Each object has a unique ID. But descendants have PARENT_ID - which corresponds to the ID of its parent. The descendants and parents are mixed in an array and go randomly. The task as in PHP and / or JS to get from this:
Array( Array ( [ID] => 4 [PARENT_ID] => 0 ) Array ( [ID] => 8 [PARENT_ID] => 4) Array ( [ID] => 9 [PARENT_ID] => 3) Array ( [ID] => 6 [PARENT_ID] => 4) Array ( [ID] => 3 [PARENT_ID] => 0 ) Array ( [ID] => 2 [PARENT_ID] => 0 ) ) THIS:
<ul id="ID-4" data-parent="4"> <li id="ID-8" data-child="4"></li> <li id="ID-6" data-child="4"></li> </ul> <ul id="ID-3" data-parent="3"> <li id="ID-8" data-child="3"></li> </ul> <ul id="ID-2" data-parent="2"> </ul> The answer I got this. This is a working version. If anyone needs, use.
$db = array("ΠΠ°Ρ ΠΌΠ°ΡΡΠΈΠ² Ρ ΠΏΠΎΠ΄ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ"); foreach($db as $key => $ar) { if(!$ar["PARENT_ID"]){ echo "<ul id='ID-".$ar["ID"]."' data-parent='".$ar["ID"]."' style='background:#aaa;'>".$ar["NAME"]; $db2 = array("ΡΠΎΡ ΠΆΠ΅ ΡΠ°ΠΌΡΠΉ ΠΌΠ°ΡΡΠΈΠ² Ρ ΠΏΠΎΠ΄ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ Π² Π½ΠΎΠ²ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ"); foreach($db2 as $key2 => $ar2) { if($ar2["PARENT_ID"]==$ar["ID"]){ echo "<li id='ID-".$ar2["ID"]."' data-child='".$ar2["PARENT_ID"]."' style='background:#afa;margin:20px auto;'>".$ar2["NAME"]."</li>"; } }echo "</ul>";} }