Also in 2 Funktionen aufteilen.
habe bis jetzt in eine Variable innerhalb des Objektes geschrieben.
$this->ausg .=
müsste also in die Funktion
buildTree1() übergeben werden. Ist das ein Problem?
Vereinfachte Code: (Parent-Id Modell)
function buildTree1()
{
$Baum = '<ul>';
buildTree();
$ausg .= '</ul>';
return $Baum;
}
private function buildTree($id = 0)
{
$sites = $this->sites; // Array aus DB mit ID , Parent-id etc.
$id_act = $this->pg_id; // Aktuellaktive Seite
$id = (int)$id;
foreach($sites as $row)
{
if($row['pg_parent'] == $id) // Link aktiv?
{
if($row['pg_id'] == $id_act)
{
$this->ausg .= '<li><span style="color: red;">'.$row['pg_lnk_nme'].'</span>';
}
else
{
$this->ausg .= '<li><a href="">'.$row['pg_lnk_nme'].'</a>';
}
if( (in_array($row['pg_id'], $hayst)&&$ext_tree == 0)// parent-id's durchsuchen -> rekursion
{
$this->ausg .= "<ul>\n";
$this->buildTree($row['pg_id']);
$this->ausg .= "</ul>\n";
}
$this->ausg .= "</li>\n";
}
}
}