maniak11
12.06.2007, 11:16:01
Witam, mam problem tego typu że mam tablice 2-wymiarową taką że np.:
$arr[$i][0] = (1,2,3,4,5);
$arr[$i][1] = (1,2,3,4,5, 6, 7);
$arr[$i][2] = (3,6,12,11,45, 234);
....
...
itd. czyli że ilość elementów jest dowolna. I teraz każdą z tych wartości musze przemnożyć przez konkretną wartość pobieraną Postem czyli w przypadku jesli było by to *2 to wynik ma być mniej wiecej taki:
$arr[$i][0] = (2,3,6,8,10);
$arr[$i][1] = (2,4,6,8,10, 12, 14);
$arr[$i][2] = (6,12,24,22,90, 468);
....
Probowalem z array_walk ale nie bardzo mi to wychodzi:/ można prosić jakąś pomoc?
fridek
12.06.2007, 11:22:11
Spróbuj tak:
<?php
$wartosc = 2;
foreach($arr as &$line)
foreach($line as &$item)
$item = $item * $wartosc;
?>
EDIT:
z tego co widzę masz trójwymiarową tablicę...
W takim razie jeszcze jeden foreach. Jest jeszcze coś takiego:
<?php
while (list
($key, $value) = each($arr)) { $value = ($key * $value);
?>
Ale jak nie lubię list(), więc działanie sprawdź sam

I pytaj wujka google...
maniak11
12.06.2007, 11:42:39
Heh, jednak jak człowieka przyszpili to zrobi, dzięki Ci za to rozwiązanie ale wlasnie zrobilem to innaczej i dziala:
function wymnoz (&$zmienna)
{
$zmienna = $zmienna*$_POST['mnoznik'];
}
array_walk($arr[$i]), 'wymnoz')
i śmiga:) Dzieki raz jeszcze