Autor | Zpráva | ||
---|---|---|---|
Svains Profil * |
#1 · Zasláno: 9. 8. 2007, 11:12:04
Ahoj,
mám pole [0] => {[type] => 'barva', [value] => 'zelena'} [1] => {[type] => 'barva', [value] => 'modrá'} [2] => {[type] => 'velikost', [value] => 'XL'} atd. a potřebuju dostat pole typu [barva] => zelena, modra [velikost] => XL |
||
joejoe Profil * |
#2 · Zasláno: 9. 8. 2007, 11:16:57
na razeni poli je imho nejlip pouzitelna funkce usort($pole, $jmeno_porovnavaci_funkce);
tohle bych nepojmenoval jako serazeni, ale spis jako transformace udelal bych to priblizne takhle: (ale netestoval jsem to) $nove_pole = array(); foreach ($pole as $key => $value) { if (isset($nove_pole[$key])) { array_push($nove_pole[$key], $value); } else { $nove_pole[$key] = array($value); } } print_r($nove_pole); |
||
Svains Profil * |
#3 · Zasláno: 9. 8. 2007, 11:19:31
Vypada to pekne, zkusim to. Diky.
|
||
Svains Profil * |
#4 · Zasláno: 10. 8. 2007, 11:16:13
Tak sem zkusil tohle:
foreach($result as $keyn => $valuen) { foreach ($valuen as $key => $value) { if (!isset($new[$key])) { $new[$key] = array(); } $new[$key][] = $value; } } a dostal pole: array(2) { ["parameter_name"]=> array(4) { [0]=> string(5) "Barva" [1]=> string(5) "Barva" [2]=> string(8) "Velikost" [3]=> string(8) "Velikost" } ["variable_value"]=> array(4) { [0]=> string(9) "Červená" [1]=> string(7) "Zelená" [2]=> string(2) "XL" [3]=> string(4) "XXXL" } } ale nevim jak dál. Potřebuju pole: array(barva => array(Zelená, modrá, červená), velikost => array(XL, XXL, XXXXXL)); |
||
tiso Profil |
#5 · Zasláno: 10. 8. 2007, 12:13:58
|
||
Svains Profil * |
#6 · Zasláno: 10. 8. 2007, 12:39:49
No takhle se to akorát ještě o jedno pole zanoří, ale nesetřídí se to..
|
||
tiso Profil |
#7 · Zasláno: 10. 8. 2007, 13:00:03
sorry, vynechal som jeden krok:
$array_new=array(); |
||
Svains Profil * |
#8 · Zasláno: 10. 8. 2007, 13:35:54
Skvěle, díky. Sice sem to musel podstatne upravit, ale bez tebe bych na to nepřišel.
|
||
Časová prodleva: 17 let
|
0