Autor | Zpráva | ||
---|---|---|---|
Medvídek Profil |
#1 · Zasláno: 12. 2. 2011, 14:40:24
Omlouvám se za možná trochu hloupej dotaz, ale nemůžu přijít na to, jak srovnat pozice jednoho pole podle hodnot v druhém poli.
Mám pole: $razeni; Array ( [0] => 1 [1] => 2 [2] => 0 [3] => 3 ) $myservices["services"]; Array ( [0] => Array ( hodnoty pole ) [1] => Array ( hodnoty pole ) [2] => Array ( hodnoty pole ) [3] => Array ( hodnoty pole ) ) A já to pole $myservices["services"] potřebuju seřadit v pořadí podle prvního pole. Takže výsledek by měl vypadat: $myservices["services"]; Array ( [1] => Array ( hodnoty pole ) [2] => Array ( hodnoty pole ) [0] => Array ( hodnoty pole ) [3] => Array ( hodnoty pole ) ) Děkuji za pomoc :) |
||
Segi_L Profil |
#2 · Zasláno: 12. 2. 2011, 15:49:29
Niečo také?
foreach ($razeni as $key=>$value) { $myservices_[$value] = $myservices[$value]; } if (isset($myservices_)) $myservices = $myservices_; |
||
Medvídek Profil |
#3 · Zasláno: 12. 2. 2011, 16:17:01
Segi_L:
Takto podobně to mám teď. Bohužel může nastat případ, že je v tom druhém poli víc položek, než v tom prvním. Čili můžu mít: $razeni; Array ( [0] => 1 [1] => 2 [2] => 0 [3] => 3 ) a $myservices["services"]; array(0=>text, 1=>text, 2=>text, 3=>text, 4=>text, 5=>text, 6=>text, 7=>text); a to by se mělo srovnat takto: array(1=>text, 2=>text, 0=>text, 3=>text, 4=>text, 5=>text, 6=>text, 7=>text); |
||
Segi_L Profil |
#4 · Zasláno: 12. 2. 2011, 16:43:20
V tom prípade.
foreach ($razeni as $key=>$value) { $myservices_[$value] = $myservices[$value]; unset($myservices[$value]); } if (isset($myservices_)) { $myservices = array_merge($myservices_, $myservices); } |
||
Medvídek Profil |
#5 · Zasláno: 13. 2. 2011, 15:17:12 · Upravil/a: Medvídek
Segi_L:
Díky, řazení funguje, ale ještě bych potřeboval, aby se zachovalo i pořadí klíčů. (http://data.69-design.cz/zkus.php) |
||
Segi_L Profil |
#6 · Zasláno: 13. 2. 2011, 15:35:45
Jasne. Ja netušil že to zoradí. V tom prípade
foreach ($razeni as $key=>$value) { $myservices_[$value] = $myservices[$value]; unset($myservices[$value]); } foreach ($myservices as $key=>$value) { $myservices_[$key] = $myservices[$key]; } if (isset($myservices_)) $myservices = $myservices_; |
||
Medvídek Profil |
#7 · Zasláno: 13. 2. 2011, 15:43:11
Segi_L:
Díky, už sem to vyřešil tímto: $myservices = $myservices_ + $myservices; Ale díky moc :) |
||
Segi_L Profil |
#8 · Zasláno: 13. 2. 2011, 15:51:13
Super já ani netušil, že sa dá pole i takto spojovať. Zase o niečo mudrejší.
|
||
Časová prodleva: 13 let
|
0