Hallo,
<?php
$inputArray[] = array('1', 'parentID' => 0, 'title' => 'Element1' );
$inputArray[] = array('2', 'parentID' => 1, 'title' => 'Element2' );
$inputArray[] = array('3', 'parentID' => 2, 'title' => 'Element3' );
$inputArray[] = array('4', 'parentID' => 2, 'title' => 'Element4' );
$inputArray[] = array('5', 'parentID' => 3, 'title' => 'Element5' );
$inputArray[] = array('6', 'parentID' => 3, 'title' => 'Element6' );
$outputArray = array();
$nodeRefs = array(0 => &$outputArray);
foreach ($inputArray as $element) {
$parent = &$nodeRefs[$element['parentID']];
$parent[$element[0]] = array('title' => $element['title']);
$nodeRefs[$element[0]] = &$parent[$element[0]];
}
print_r($outputArray);
?>
Das Script funktioniert soweit. Nur wenn das Inhaltsarray keine ID hat weiss ich nicht weiter mit der Schleife.
$inputArray[] = array('parentID' => 0, 'title' => 'Element1' );
$inputArray[] = array('parentID' => 1, 'title' => 'Element2' );
$inputArray[] = array('parentID' => 2, 'title' => 'Element3' );
$inputArray[] = array('parentID' => 2, 'title' => 'Element4' );
$inputArray[] = array('parentID' => 3, 'title' => 'Element5' );
$inputArray[] = array('parentID' => 3, 'title' => 'Element6' );
Timo