मुझे यह कोड माता-पिता के बाल सरणियों को अद्भुत बनाने के लिए मिला है। मैंने बिना किसी समस्या के 4 गहराई में परीक्षण किया है। हालांकि यह एक पुनरावर्ती कार्य नहीं है।
$tree = null;
foreach($results as $result)
{
$thisref = &$refs->{$result['id']};
foreach($result as $k => $v)
{
$thisref->{$k} = $v;
}
if ($result['parentId'] == 0) {
$tree->{$result['id']} = &$thisref;
} else {
$refs->{$result['parentId']}->children->{$result['id']} = &$thisref;
}
}
$tree; // contains the newly sorted tree.
अपनी स्थिति के साथ पूरी तरह से काम करने के लिए आपको इसमें कुछ संशोधन करने पड़ सकते हैं। लेकिन मूल रूप से यह सभी परिणामों के माध्यम से लूप करता है और उन्हें संदर्भ द्वारा जोड़ता है।
ध्यान दें कि अंतिम $tree
डेटा प्रकार एक object
है और नहीं एक array
शुभकामनाएँ
अपडेट करें
आप इस तरह से ऐरे बना सकते हैं
$query = "SELECT * FROM pB_test ORDER BY parentId ASC";
$dbresult = mysql_query($query) or die ('Database Error (' . mysql_errno() . ') ' . mysql_error());
$results = array();
while($row=mysql_fetch_assoc($dbresult))
{
$results[]=$row
}