Autor Zpráva
matak
Profil *
Mám dvě pole
pole1: pole2:
[A]=1 [A]=14
[B]=2 [B]=13
[C]=0

potrebuji je sloučit, má někdo nápad?
výsledek:
[A]=15
[B]=15
[C]=0

myslím existuje nějaká funkce?abych nemusel procházet pole pomocí for a sčítat? taky jde o to ze pole nemají vsechny indexy shodné, jen některé, ty se mají sečíst ostatní se mají připojit se svou hodnotou
Hugo
Profil
http://de2.php.net/manual/de/function.array-sum.php
Hugo
Profil
Tady je ceska verze
http://mirrors.inway.cz/manual/cs/function.array-sum.php

Jsem v nemecku a hodilo me to automaticky na nemeckou verzi.
matak
Profil
jj dík, ale mě snad nejde ani tak o součet jako spíš sloučení polí ale array_merge mi to nebere tak jak chci

potreboval bych podle indexu secist pole a kde neni nechat být

tedy může vypadat i tak
pole1: pole2:
[A]=>(kdo=>Franta, kolik=1) [A]=>(kdo=>Franta, kolik=23)
[A]=>(kdo=>Honza, kolik=2) [A]=>(kdo=>Jana, kolik=2)
[C]=0

výsledek:
[A]=>(kdo=>Franta, kolik=24)
[A]=>(kdo=>Honza, kolik=2)
[A]=>(kdo=>Jana, kolik=2)
[C]=0
matak
Profil
tak zatím vyřešeno takhle:

function ABC_merge($a1, $a2) {
$a = $a1;
while (list ($k, $v) = each ($a2)) {
if (array_key_exists($k, $a)) $a[$k] = $v;
else $a['0-9'] += $v;
}
return $a;
}
Toto téma je uzamčeno. Odpověď nelze zaslat.

0