Mailinglisten-Archive |
G.Wendebourg schrieb:
> Sebastian Mendel schrieb:
>> G.Wendebourg schrieb:
>>
>>> [...]
>>>
>>> Wie kann ich etwa einen Array mit 4 Feldern (zb. Name, eMail, Ort,
>>> Telefon, Datum) und einer beliebigen Anzahl Elementen ueber eine
>>> Schleife befuellen / etablieren ?
>>>
>> $data = array();
>> for/if/while ... {
>> $data[] = array(
>> 'name' => $result[0],
>> 'email' => $result[1],
>> 'ort' => $result[2],
>> )
>> }
>>
> Danke. Damit funktioniert der Aufbau des Arrays. Allerdings s.u.
>>> soll anschliessend nach einem der Felder sortiert werden koennen,
>>> um dann eine entsprechende Ausgabe zu realisieren.
>>> Wie wuerde dann der anschliessende Befehl fuer den Sortiervorgang (zb.
>>> nach "Ort") aussehen?
>>>
>> php.net/array_multisort
>
> Auf php.net hatte ich eine Loesung gefunden, die aber den Umbau des
> Arrays zur Voraussetzung machte und bei mir auch dann nicht funktionierte.
>
> Kann man nicht einen Array direkt so aufbauen, das er anschliessend
> sortierbar ist?
ja, und zwar so wie ich oben beschrieben hatte
> PS
> Habe nun den Array so aufgebaut:
> while..{
> $adr_arr['mail'][]=$email;
> $adr_arr['name'][]=$name;
> $adr_arr['ort'][]=$ort;
> $adr_arr['datum'][]=$timestamp;}
>
> Wenn ich es nun aber versuche mit
> array_multisort ($adr_arr['datum'], SORT_NUMERIC, SORT_DESC );
>
> dann bekomme ich tatsaechlich das Datum sortiert, waehrend die uebrigen
> "Spalten" in ihrer Rangfolge verbleiben.
> Liegt das an falscher Syntax bei multisort oder am Aufbau des Arrays?
> Bzw. wie muesste das korrekt aussehen?
http://www.phpbar.de/w/Multidimensionales_Array_sortieren
--
Sebastian Mendel
www.sebastianmendel.de
php::bar PHP Wiki - Listenarchive