chocholda 0 Odesláno: 13. Listopad, 2012 Share Odesláno: 13. Listopad, 2012 Zdravím.. Řeším tady jeden problém.. Potřeboval bych poradit, jak sloučit dvě pole? Respektive stringy: Mám dvě proměnné $a a $b: Obě proměnné jsou stringy, a obě zapsané ve tvaru id:počet,id:počet,id:počet ... Čili pomocí funkce explode(",",$a); je možné z každé z těch proměnných udělat pole, kde každý prvek bude id:počet, čili třeba: 5:2 A já bych potřeboval, aby to sloučilo tyhle dvě pole (nebo proměnné, to je jedno, stejně bych to pak zase převedl na string) podle id.. čili například pokud: $a = 2:2,4:15,33:2,20:1 $b = 1:1,3:4,2:1,20:5 tak aby mi to z toho udělalo: $c = 1:1,2:3,3:4,4:15,20:6,33:2 (snad barvy pomůžou v orientaci ) Předěm díky, pokud někdo pomůžete a poradíte chochy CHtěl bych poprosit někoho z moderátorů, aby to přesunul do sekce Help.. Omylem jsem to dal sem.. Díky Link to comment Share on other sites More sharing options...
0 Deleted User 295 Odesláno: 14. Listopad, 2012 Share Odesláno: 14. Listopad, 2012 No moc som teda nepochopil ako to myslis. Ak chces zlucit 2 polia di 1 tak array_merge a ak chces s pola dostat string tak implode Link to comment Share on other sites More sharing options...
0 chocholda 0 Odesláno: 16. Listopad, 2012 Author Share Odesláno: 16. Listopad, 2012 jak funguje emplode a implude vím.. Ale pochybuju že array_merge pomůže, protože já nepotřebuju sloužit ty 2 pole podle indexu, ale podle dalo by se říct prvního ze dvou čísel co v tam jsou.. tj když pomocí explode rozělím to pole, tak budu mít pole například: 2:15 5:1 4:4 atd, a já potřebuju aby to sečetlo to druhé číslo, pokud bude to první číslo stejné jako některé z dalšího pole, tj když v druhým pole bude taky něco s hodnoutou která je už v prvním poli. Trochu jsem se do toho zamotal, ale prostě pokud první čislo bude stejné v obou polích, tak to sečte to druhé číslo, a uloží do dalšího pole.. Link to comment Share on other sites More sharing options...
0 hospoda96 31 Odesláno: 18. Listopad, 2012 Share Odesláno: 18. Listopad, 2012 Varování! Uživatel varován Tag doplněn. Link to comment Share on other sites More sharing options...
0 CZechBoY 0 Odesláno: 17. Prosinec, 2012 Share Odesláno: 17. Prosinec, 2012 jednoduše přes foreach... <?php $a = '2:2,4:15,3:2,20:1'; $b = '1:1,3:4,2:1,20:5'; $aa = string2array($a); $ab = string2array($; $slouceni = array(); foreach($aa as $key => $val) { $slouceni[$key] = $val; if(isset($ab[$key])) $slouceni[$key] += $ab[$key]; } foreach($ab as $key => $val) { if(!isset($slouceni[$key])) $slouceni[$key] = $val; } ksort($slouceni); // seřazení klíčů od nejnižšího po nejvyšší function string2array($string) { $expl = explode(',', $string); $arr = array(); foreach($expl as $ex) { $tmp = explode(':', $ex); $arr[$tmp[0]] = $tmp[1]; } return $arr; } Link to comment Share on other sites More sharing options...
Dotaz
chocholda 0
Zdravím..
Řeším tady jeden problém.. Potřeboval bych poradit, jak sloučit dvě pole? Respektive stringy:
Mám dvě proměnné $a a $b: Obě proměnné jsou stringy, a obě zapsané ve tvaru id:počet,id:počet,id:počet ...
Čili pomocí funkce explode(",",$a); je možné z každé z těch proměnných udělat pole, kde každý prvek bude id:počet, čili třeba: 5:2
A já bych potřeboval, aby to sloučilo tyhle dvě pole (nebo proměnné, to je jedno, stejně bych to pak zase převedl na string) podle id..
čili například pokud:
$a = 2:2,4:15,33:2,20:1
$b = 1:1,3:4,2:1,20:5
tak aby mi to z toho udělalo:
$c = 1:1,2:3,3:4,4:15,20:6,33:2
(snad barvy pomůžou v orientaci )
Předěm díky, pokud někdo pomůžete a poradíte
chochy
CHtěl bych poprosit někoho z moderátorů, aby to přesunul do sekce Help.. Omylem jsem to dal sem.. Díky
Link to comment
Share on other sites
4 odpovědí na tuto otázku
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now