
Seřazení vícerozměrného pole - PHP
Dobrý den mám takový problém. Hledám řešení na internetu, ale žádné nefunguje a už si nevím rady.
Mám více rozměrné pole v php
$pole=>"skore"
[0]=> 12
[1]=> 9
[2]=> 15
[3]=> 5
[4]=> 17
$pole=>"0"
[0]=> 15
[1]=> 16
[2]=> 46
[3]=> 18
[4]=> 45
$pole=>"1"
[0]=> 25
[1]=> 32
[2]=> 15
[3]=> 66
[4]=> 33
$pole=>"2"
[0]=> 10
[1]=> 20
[2]=> 16
[3]=> 16
[4]=> 99
a já bych ho potřeboval seřadit podle skore celé sloupce, aby to pole vypadalo následovně:
$pole=>"skore"
[0]=> 5
[1]=> 9
[2]=> 12
[3]=> 15
[4]=> 17
$pole=>"0"
[0]=> 18
[1]=> 16
[2]=> 18
[3]=> 46
[4]=> 45
$pole=>"1"
[0]=> 66
[1]=> 32
[2]=> 25
[3]=> 15
[4]=> 33
$pole=>"2"
[0]=> 16
[1]=> 20
[2]=> 10
[3]=> 16
[4]=> 99
Pomohl by mi prosím někdo s tím? Předem moc děkuji.
Použi databázu. Alebo si teda zoraď tú jednu dimenziu, a podľa jeho indexov ten zvyšok.
Bohužel databázi nemohu použít. Jinak by to byla pohoda.
Aj tak je to pohoda, veď využiješ index utriedeného poľa pre triedenie zvyšných polí.
A dokonca má PHP aj takéto čosi http://php.net/manual/en/function.array-multisort.php
Todle mi to seřadí takle:
$pole=>
[0]=> 5
[1]=> 9
[2]=> 12
[3]=> 15
[4]=> 17
$pole=>"0"
[0]=> 15
[1]=> 16
[2]=> 18
[3]=> 45
[4]=> 46
Ale já potřebuji, aby se všechny hodnoty seřadili podle $pole["skore"]. Podle skoré se prohodily celé řádky.
docela Vám nerozumiem, môžete dať príklad?
tada mas ulozene v zlej strukture. vyrob si nejaky objekt, kde kazdy atribut bude predstavovat udaj z jedneho pola.
Cize napriklad:
MojObjekt {
public $score;
public $stlpec0;
public $stlpec1;
public $stlpec2;
}
Urob si potom pole tohto objektu a pouzi funkciu usort na zoradenie.
Budes tak mat namiesto 3 stlpcov, ktore mas teraz v 3 poliach, 1 pole o 5 riadkoch. Kazdy riadok bude ten objekt.
navod na usort najdes na strankach PHP.
Chápu, ale v tomhle případě to asi moc použít nebudu moc. Kouknu na to.
Preco nie? Data z tvojich struktur, sa celkom lahko daju pretransformovat do tejto. A potom aj spat. Cize tato struktura by sluzila len docasne na sort.
Pomohl bys mi stím? Moc nevím jak do toho.
prevod z tvojich struktur na tuto novu:
prevod spat:
Umim jen v Jave, prepsat do PHP jiste zvladnes. Muzes kliknout na execute a vyzkouset si to...
http://tpcg.io/diwPzD
Ted na to koukam a mam tam chybu. ktera se projevi jen nekdy. Kdo ji najde, ma u me virutalni pivko...
http://uk.php.net/manual/en/function.array-multisort.php
Tak vyřešeno, díky moc chlapy.