Witam mam tablice w takiej postaci
http://www.php.net/array (size=2) 'id1' => http://www.php.net/array (size=7) 0 => int 69997 1 => int 69997 2 => int 72047 3 => int 72784 4 => int 72699 5 => int 72699 6 => int 72699 'ilosc' => http://www.php.net/array (size=7) 0 => int 0 1 => int 0 2 => int 0 3 => int 0 4 => int 4 5 => int 4 6 => int 1
[php] http://www.php.net/array (size=2) 'id1' => http://www.php.net/array (size=7) 0 => int 69997 1 => int 72047 2 => int 72784 3 => int 72699 'ilosc' => http://www.php.net/array (size=7) 0 => int 0 1 => int 0 2 => int 0 3 => int 9
http://www.php.net/array 69997 => 0 72047 => 0 72784 => 0 72699 => 9
foreach($zzs as $zzk => $zzv) { $s[] = http://www.php.net/array($zzv['id1'] => $zzv['ilosc']); } foreach($s as $t => $z) { foreach($z as $l => $p) { $xt[$l] += $p; } }
Nazewnictwo zmiennych powala. Nastepnym razem uzyj laciny, bedzie jeszzcze trudniej sie polapac
No ale twoj kod nie robi tego co chciales pierwotnie
edit: dobra, robi. Nie widzialem wczesniej tego ALBO
$nowaTablica = http://www.php.net/array_count_values($liczonaTablica);
@ LowiczakPL I jak to sie ma do problemu procz faktu ze nic a nic?
Można tak:
<?php $arrayData = http://www.php.net/array( 'id' => http://www.php.net/array( 0 => 69997, 1 => 69997, 2 => 72047, 3 => 72784, 4 => 72699, 5 => 72699, 6 => 72699 ), 'quantity' => http://www.php.net/array( 0 => 0, 1 => 0, 2 => 0, 3 => 0, 4 => 4, 5 => 4, 6 => 1 ) ); $value = 0; $arrayId = http://www.php.net/array(); $arrayQty = http://www.php.net/array(); $arrayCount = http://www.php.net/array(); $arrayResult = http://www.php.net/array(); foreach ($arrayData as $value) { foreach ($value as $k => $v) { if (!http://www.php.net/in_array($v[$k], $value)) { $arrayId[] = $v; } else { $arrayQty[] = $v; } } } foreach ($arrayId as $key => $value) { if (http://www.php.net/array_key_exists($value, $arrayCount)) { $arrayResult[$value] = $arrayCount[$value] + $arrayQty[$key]; } $arrayCount[$value] = $arrayQty[$key]; $arrayCount[$value] = $arrayCount[$value] + $arrayQty[$key]; if (!http://www.php.net/isset($arrayResult[$value])) $arrayResult[$value] = $arrayCount[$value] + $arrayQty[$key]; } http://www.php.net/echo '<pre>'; http://www.php.net/print_r($arrayData); http://www.php.net/echo '</pre>'; http://www.php.net/echo '<hr>'; http://www.php.net/echo '<pre>'; http://www.php.net/print_r($arrayResult); http://www.php.net/echo '</pre>'; ?>
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)