Mailinglisten-Archive |
Lutz Zetzsche wrote: > Hi Norbert, > > Norbert Pfeiffer schrieb: >> Hi Fabian, >> >> vergiss array_multisort(); >> das benoetigt einen sdpeziellen Aufbau der Arrays, so dass >> sie meistens hin und her konvertiert werden muessen, um es >> naturgemaess anzuwenden - IMHO eine ueberfluessige Funktion. >> >> Praktischer ist usort(); > > nicht schon wieder, Norbert. ;-) Mittlerweile weiß zwar jeder aus den > vergangenen Jahren, daß Du array_multisort() nicht magst, aber überflüssig > ist die Funktion überhaupt nicht. Ganz im Gegenteil. Sie ist zudem auch > sehr mächtig. sehr mächtig ist es, und das ist auch gleich die Ursache für Norberts Kritik, denn diese Mächtigkeit kommt nicht ohne Nachteile, nämlich die etwas 'verworren' wirkende 'Parametrisierung' > Was ist im übrigen eine "naturgemäße" Anwendung? ;-) array_multisort() > erwartet einen multidimensionalen Array, der praktisch wie eine > Datenbanktabelle aufgebaut ist. Kann es, so gesehen, einen naturgemäßeren > Aufbau eines Arrays geben? Sicherlich nicht. :-D ... war es nicht so: array ... struct ... object davon ausgehend ist es für mich auch eher 'naturgmäß' das die Elemente eines 'Objketes' (auch wenn das 'Objekt' in dem Falle ein Array ist) in einem 'Objekt' sind und nicht alle Eigenschaften des Typs 'a' im ersten 'Objekt' und alle Eigenschaften des Typs 'b' im zweiten ... sondern jedes 'Objekt' eine Eigenschaft 'a' und 'b' hat. gruppe ( holzbecher( rot, rund ) plastebecher( gelb, dick ) metallbecher( blau , dünn ) ) als gruppe ( name( holzbecher, plastebecher, metallbecher ) farbe( rot, gelb, blau ) form( rund, dick, dünn ) ) da diese (die erste) 'naturgemäße' Form eines Arrays meißt durch Datenbankabfragen auftritt ist dafür ein array_mutlisort() eh überflüssig, da die Sortierung in der DB erfolgen sollte (noch viel mächtiger!) p.s. und die mächtigste aller Möglichkeiten ist das Array per DB-Abfrage zu sortieren ... da hat man dann sogar noch GROUP BY, LIMIT, und HAVING Funktionalität ;-) -- Sebastian Mendel www.sebastianmendel.de www.sf.net/projects/phpdatetime | www.sf.net/projects/phptimesheet
php::bar PHP Wiki - Listenarchive