dedlfix: Eindimensionales Array zu Mehrdimensionalem Objekt konvertieren

Beitrag lesen

Hi!

Naja, ich wollte eben für jeden Pfadbestandteil ein eigenes Script starten.

Das sieht nicht gerade abstrahiert aus. Wenn jede Seite ihr eigenes Script hat, dann ist das nciht abstrakt sondern konkret. Abstrakt wird es dann erst an der Stelle, wenn die konkrete Seite, nachdem sie ein paar Variablen mit Nutzdaten gefüllt hat, diese an ein Template übergibt, das sich um das Rendern kümmert.

Ich habe auch mal irgendwo gesehen das einer $_POST via Funktion in ein Objekt gewandelt hat. Aus $_POST["side"] wurde dann z.B. $post->side.
Begründung dazu: Objekte zu verwende ist einfach edler - :-P

Ziemlich unsinniger Aufwand, wenn du mich fragst. Ich seh da keinen Vorteil drin, eher noch den Nachteil, dass die eigene Variable nun nicht mehr superglobal ist.

Ist wohl echt ne Geschmackssache, k.a. wieso es da unterschiedliche Standpunkte gibt.

Vielleicht weil es dieser Jemand als schick erachtet hat und bisher noch keine Erfahrungen zu den Konsequenzen gesammelt hat.

Man kann den Begriff "mehrdimensionales Array" durchaus verwenden, dann aber bitte nicht für eine baumstrukturartige Datensammlung, sondern eher für mathematischen Dinge wie Matrizen oder das Spielfeld von 3D-4gewinnt und dergleichen, also Gebilde, die sich in jeder Richtung/Dimension gleichmäßig erstrecken.
Das hört sich so an als ob du von C / C++ und solchen Compilersprachen sprichst. Ich glaube da gab es mehrdimensionale Arrays mit jeweils unterschiedlichen Längen nicht, gell?

Jein. Herkömmliche Arrays sind linear aufgebaut. Die Elemente werden über lückenlos auf(oder ab)steigende Schlüsselwerte angesprochen. Man kann jederzeit anhand der Startposition im Speicher und dem Produkt aus Elementgröße und der Differenz des Schlüssels zu dem des Startelements die Position bestimmen. Das geht auch bei echten mehrdimensionalen Arrays, da kommen dann noch die weiteren Richtungen mit ins Produkt.

Für Strukturen, die nicht mehr mit diesem streng gleichmäßigen Gebilde erstellt werden können, verwendet man spezielle Elemente, die dann auch einen eigenen Namen haben, wie Collection, Dictionary, Stack, hastenichgesehen. PHP hat viele dieser Spezialformen zu vereinen versucht, und es dann trotzdem Array genannt. (Siehe Einleitung zum Typ Array.) Im Grunde genommen ist ein PHP-Array nicht mal ein Array im herkömmlichen Sinne. Man kann es jedoch wie ein solches verwenden, aber eben auch wie eine der anderen Strukturen, sogar ähnlich wie ein mehrdimensionales Array. Aber wenn du genau hinsiehst, ist es "nur" ein PHP-Array of PHP-Arrays - mit all seinen Möglichkeiten und Konsequenzen, wie beispielsweise dem Entfernen von Elementen von beliebigen Positionen.

Lo!
Was bedeutet eigentlich "Lo!"? ^^

Ach, das ist nur das Gegenstück zu dem Ding da oben. Ansonsten hat es keine weitere von mir beabsichtigte Bedeutung.

Lo!