Mailinglisten-Archive |
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hallo, Volker Dr. Göbbels schrieb: > Hallo Henning, > > also ich verwende im allgemeinen keine verschiedenen IDs für > verschiedene Ebenen. Stattdessen kommt das simple id/parentid Prinzip > zum Einsatz. Sprich Kinder sind durch das Feld parentid mit ihrem > "Elternknoten" verbunden. Damit kann man komplexe Bäume bauen. Und > natürlich auch Subbäume durch Klick auf den Link mit einer bestimmten ID > aufklappen/zuklappen. > Ein Treewalker baut dann aus dem "flachen" Array aller Knoten den > referenzierten Baum. Sollte Der Baum groß sein oder ein besonderer > Bedarf an Geschwindigkeit bestehen, wird der gesamte Baum in einem > Heap-Cache/Shared Memory vorrätig gehalten. Der ganze Baum deshalb, weil > je nach eingeloggtem User die Menüpunkte noch mal nach Rechten gefiltert > werden müssen. > Das ist jetzt keine wirkliche Hilfe für dein Problem, aber vielleicht > mal ein anderer Denkansatz ... genau diesen Ansatz hatte ich mir für mein System auch überlegt. Allerdings wollte ich das Menu dann mittels einer Funktion aufbauen, die zunächst alle Elemente bestimmt, für die der jeweilige User Rechte besitzt. Diese Elemente möchte ich dann mit einer rekursiven Funktion richtig anordnen und das Menu dann aufbauen. Meine Frage hier ist, wie kann ich das ressourcenschonender organisieren. Vor allem in Hinsicht auf den angesprochenen Treewalker und den Heap-Cache. Gibt es da fertige Funktionen die das erledigen? Muss ich meinen Id/Parent-id Beziehungen auf bestimmte Weise in das Array speichern und wie kann ich solch eine Struktur performant zwischenspeichern? Vielen Dank schon für eure Tipps und Hilfen! Mit freundlichen Grüßen Stefan Botzenhart - -- ************************************************** Bevelopment Botzenhart Stefan Memmingerstr. 75 89264 Weißenhorn fon: (+49) 172/6247909 fax: (+49) 89 - 1488 154761 email: info at bevelopment.de www: http://www.bevelopment.de -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (MingW32) Comment: GnuPT-Light 0.2 by EQUIPMENTE.DE Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iD8DBQFC4WbIX6uTddf5BKoRAizSAJ0VE3kkHUoN8Kptw1QXN0EOk2iJKwCeO0Qe ntD1lr6lO3tTvljii9NA7lk= =sBAa -----END PGP SIGNATURE-----
php::bar PHP Wiki - Listenarchive