Ĺadny brzuch
Co robię nie tak, bo jakoś nie mogę się doszukać odpowidzi.
<?php $suma = array( array( array( 'p' => 0, 'o' => 0, 'e' => 0 ) ) ); print "<pre>"; print_r($suma); print "</pre>"; for($i = 0; $i< 4; $i++){ for($k = 0; $k < 4; $k++){ $suma[$i][$k]['p'] +=1; } } ?>
Notice: Undefined offset: 1 in ...\tabWielo.php on line 19
Notice: Undefined index: p in ...\tabWielo.php on line 19
Użytkownik gesiek edytował ten post 09 marzec 2009, 22:20
Wiesz, co to logika? Prześledź swój algorytm, a się dowiesz, że Twoja tablica nie ma czterech tablic wewnątrz, a jedną dla każdego rzędu. Poprwa tablicę na taką, która będzie zawierać po cztery tablice na każdym rzędzie i pętla zawsze będzie spełniona.
Wiesz, co to logika? Prześledź swój algorytm, a się dowiesz, że Twoja tablica nie ma czterech tablic wewnątrz, a jedną dla każdego rzędu. Poprwa tablicę na taką, która będzie zawierać po cztery tablice na każdym rzędzie i pętla zawsze będzie spełniona.
<?php $Zestawienie1 = array(0 => array( 0 => array( 0 => array( 'p' => 15, 'o' => 5654, 'e' => 548 ) ), array( 1 => array( 'p' => 215, 'o' => 4, 'e' => 8 ) ), 1 => array( 0 => array( 'p' => 15, 'o' => 5654, 'e' => 548 ) ), array( 1 => array( 'p' => 215, 'o' => 4, 'e' => 8 ) ), array( 3 => array( 'p' => 335, 'o' => 54, 'e' => 532 ) ) ), array( 1 => array( 0 => array( 'p' => 15, 'o' => 5654, 'e' => 548 ) ), array( 1 => array( 'p' => 215, 'o' => 4, 'e' => 8 ) ), array( 3 => array( 'p' => 335, 'o' => 54, 'e' => 532 ) ), 1 => array( 0 => array( 'p' => 15, 'o' => 5654, 'e' => 548 ) ), array( 1 => array( 'p' => 215, 'o' => 4, 'e' => 8 ) ), array( 3 => array( 'p' => 335, 'o' => 54, 'e' => 532 ) ), array( 4 => array( 'p' => 335, 'o' => 54, 'e' => 532 ) ) ) ); print "<pre>"; print_r($Zestawienie1); print "</pre>"; $ile = count($Zestawienie1); for($i=0;$i<$ile;$i++){ $ile2 = count($Zestawienie1[$i]); for($k=0;$k<$ile2;$k++){ //$suma[$i][$k]['p'] += $Zestawienie1[$i][$k]['p']; } } ?>
suma[miesiac1][dzien1][p]
suma[miesiac1][dzien2][p]
...
...
...
suma[miesiac_N][dzien1][p]
suma[miesiac_N][dzienN][p]
chce uzyskać to w takim zapisie. eh
print "<pre>"; print_r($Zestawienie1); print "</pre>"; $suma = array(); foreach($Zestawienie1 as $k1 => $v1){ foreach($v1 as $k2 => $v2){ foreach ($v2 as $k3 => $v3) { if (!isset($suma[$k1][$k2]['p'])) $suma[$k1][$k2]['p'] = 0; $suma[$k1][$k2]['p'] += $v3['p']; } } }To już zadziała. Mam nadzieję, że taki był zamierzony cel.
Tak o to chodziło. Dzięki za zaangażowanie.
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
<?php $suma = array( array( array( 'p' => 0, 'o' => 0, 'e' => 0 ) ) ); print "<pre>"; print_r($suma); print "</pre>"; for($i = 0; $i< 4; $i++){ for($k = 0; $k < 4; $k++){ $suma[$i][$k]['p'] +=1; } } ?>
Notice: Undefined offset: 1 in ...\tabWielo.php on line 19
Notice: Undefined index: p in ...\tabWielo.php on line 19
Użytkownik gesiek edytował ten post 09 marzec 2009, 22:20
Wiesz, co to logika? Prześledź swój algorytm, a się dowiesz, że Twoja tablica nie ma czterech tablic wewnątrz, a jedną dla każdego rzędu. Poprwa tablicę na taką, która będzie zawierać po cztery tablice na każdym rzędzie i pętla zawsze będzie spełniona.
Wiesz, co to logika? Prześledź swój algorytm, a się dowiesz, że Twoja tablica nie ma czterech tablic wewnątrz, a jedną dla każdego rzędu. Poprwa tablicę na taką, która będzie zawierać po cztery tablice na każdym rzędzie i pętla zawsze będzie spełniona.
<?php $Zestawienie1 = array(0 => array( 0 => array( 0 => array( 'p' => 15, 'o' => 5654, 'e' => 548 ) ), array( 1 => array( 'p' => 215, 'o' => 4, 'e' => 8 ) ), 1 => array( 0 => array( 'p' => 15, 'o' => 5654, 'e' => 548 ) ), array( 1 => array( 'p' => 215, 'o' => 4, 'e' => 8 ) ), array( 3 => array( 'p' => 335, 'o' => 54, 'e' => 532 ) ) ), array( 1 => array( 0 => array( 'p' => 15, 'o' => 5654, 'e' => 548 ) ), array( 1 => array( 'p' => 215, 'o' => 4, 'e' => 8 ) ), array( 3 => array( 'p' => 335, 'o' => 54, 'e' => 532 ) ), 1 => array( 0 => array( 'p' => 15, 'o' => 5654, 'e' => 548 ) ), array( 1 => array( 'p' => 215, 'o' => 4, 'e' => 8 ) ), array( 3 => array( 'p' => 335, 'o' => 54, 'e' => 532 ) ), array( 4 => array( 'p' => 335, 'o' => 54, 'e' => 532 ) ) ) ); print "<pre>"; print_r($Zestawienie1); print "</pre>"; $ile = count($Zestawienie1); for($i=0;$i<$ile;$i++){ $ile2 = count($Zestawienie1[$i]); for($k=0;$k<$ile2;$k++){ //$suma[$i][$k]['p'] += $Zestawienie1[$i][$k]['p']; } } ?>
suma[miesiac1][dzien1][p]
suma[miesiac1][dzien2][p]
...
...
...
suma[miesiac_N][dzien1][p]
suma[miesiac_N][dzienN][p]
chce uzyskać to w takim zapisie. eh
print "<pre>"; print_r($Zestawienie1); print "</pre>"; $suma = array(); foreach($Zestawienie1 as $k1 => $v1){ foreach($v1 as $k2 => $v2){ foreach ($v2 as $k3 => $v3) { if (!isset($suma[$k1][$k2]['p'])) $suma[$k1][$k2]['p'] = 0; $suma[$k1][$k2]['p'] += $v3['p']; } } }To już zadziała. Mam nadzieję, że taki był zamierzony cel.
Tak o to chodziło. Dzięki za zaangażowanie.