třídění pole
5 příspěvků
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
Trochu si lámu hlavu: Potřebuju vytvořit vícerozměrné pole, naházet do něj data a pak ho seřadit podle určitého sloupce, aniž by se přeházely data. Je někdo, kdo v tom umí chodit a komplet osvětlí jak na to? Dík
-
<HTML>Myslim ze manual je ten borec o kterem mluvis ;) co treba array_multisort()?</HTML>
-
No ono je to ještě trochu složitější, já to potřebuju seřadit primárně podle jednoho sloupce a sekundárně podle druhýho....
-
AFAIK na třídění se používají se metody, kterým se tuším říká stabilní, takže když to napřed zesortíš podle jednoho a pak podle druhého, tak dostaneš to, co potřebuješ...
-
Doporučil bych usort. $seznam=array(); $seznam[]=array('primary'=>2, 'secondary'=>5); $seznam[]=array('primary'=>2, 'secondary'=>4); Porovnávací funkci bych pak viděl takhle: function cmp ($a, $b) { if ($a['primary'] == $b['primary']) { if ($a['secondary'] == $b['secondary']) return 0; return ($a['secondary'] < $b['secondary']) ? -1 : 1; } return ($a['primary'] < $b['primary']) ? -1 : 1; } usort($seznam,'cmp');