Этот скрипт должен получить многомерный массив и выполнить итерацию значений.
Размер массива равен 10, и каждый элемент должен содержать ассоциативный массив:
$games[0] => array('foo' => 'bar')
$games[1] => array('foo1' => 'bar1')
etc..
цикл должен повторяться 5 раз в этом примере.Цикл for должен повторяться 10 раз для каждой итерации цикла while.
Так что я ожидаю, что эхо будет:
countwhile = 5 countfor = 50 totalgames = 50
, но я действительно получаю
countwhile = 5 countfor = 150 totalgames = 150
Я считаю, что массив $ games не является проблемой, потому что я уже делал этот вызов ниже и использовал print_r для просмотра содержимого, как и ожидалось.
Весь этот код не находится ни в функции, ни в классеКак и на моей странице index.php, проблема может быть связана с областями действия переменных?
$totalruns = 5;
$endindx = 10;
$startindx = 0;
$countwhile = 0;
$countfor = 0;
$totalfilesize = 0;
$totalgames = 0;
$sizeof = 0;
while($totalruns > 0)
{
$games = $feedHandler->getGames($startindx, $endindx);
$sizeof = sizeof($games);
for($i=0; $i<$sizeof; $i++)
{
$totalfilesize += $games[$i]['swf_file_size'];
$countfor++;
}
$startindx += 10;
$endindx += 10;
$totalruns -= 1;
$totalgames += $sizeof;
unset($games);
}
echo'<p>' . ' countwhile = ' . $countwhile . ' countfor = ' . $countfor . '</p>';