Ist dir das wirklich so wichtig?

Ein richtig effiziente Methode gibt es da erstmal nicht, man könnte dieses Ding mit den while Schleifen einfach so fortführen, wie es da schon für die beiden Ebenen gemacht wird.

Sofern kaum User alle Ebenen abdecken und wenn, dann nur mit wenigen Refs, ist das gut möglich.

Aber bei einem User mit 100 Refs, die je 10 Refs haben je 2Refs und dann nochmal 1 Ref, da führt das zu einer erhbelichen Anzahl Schleifendurchläufe und somit Datenbankanfragen.


Selbes Problem liese sich mit einige JOINS auch rein in MySQL lösen, was aber nicht minder Performance kostet, bei einer großen Datenmenge.

Und das du dich nur für die kleine Anzeige extra mit Bäumen in MySQL beschäftigen willst, glaube ich mal nicht (Das wäre ein performanter Weg)