Назначение многомерного массива PHP - PullRequest
0 голосов
/ 02 декабря 2011

Мне нужно заполнить многомерный массив, и вот мой код, который у меня есть для этого.

while($num > $i)
{
        $default[$i]=0;
        $defaultcounter=0;
        $default2[$i]=0;
        $default3[$i]=0;
        $query="Select * from `issues` WHERE `app`='" . $applist[$i] . "'" . "AND `startmonth`='". $month ."' ORDER BY `id` ASC";
        $result=mysql_query($query);
        while($row = mysql_fetch_array($result))
        {
            $downtime[$i]+=$row['duration'];
            $default2[$i]++;    //Number of Incidents Variable
            $defaultcouinter++;
            $times[$i] = array();
            $times[$i][$defaultcounter[$i]]=$row['startday'].$row['starttime'];
        }
        $appavail[$i]=100 -(ceil($downtime[$i] * 100 / $totaltime));
        $default[$i] = (ceil($downtime[$i] / $defaultcounter));
        $i++;
    }

Видимо, я не делаю правильное назначение массива. Мне нужно, чтобы мое число строк подсчитывалось с помощью переменной $i вне моего времени while, а затем в то время, пока defaultcounter будет идти в ногу со столбцом. Я пытался просто сделать $time[$i][defaultcounter], и мне это не понравилось. Каков правильный синтаксис для назначения многомерного массива?

Спасибо

1 Ответ

2 голосов
/ 02 декабря 2011

$times[$i] = array() должен выходить (перед) циклом while, если вы не хотите, чтобы он переопределял $times как пустой массив в каждой итерации (сбрасывая значения). Кроме того, вы присваиваете правильные значения, хотя это выглядит немного странно (не уверен, чего вы хотите достичь). Это общие формулы, должны дать вам представление:

$array[] = $subarray;
$array[$subarray] = $value;
$array[$subarray][] = $value;
$array[$subarray][$i] = $value;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...