arrays — синтаксис в php для 2d матрицы, который точно такой же, как в C

Я хочу сделать 2d массив в php точно так же, как и в C, к которому можно получить доступ как mat [i] [j]. какой будет синтаксис?

Следующий код — это то, что я пытаюсь преобразовать из C в PHP:

 mat[5][5];
for(i=0,i<5,i++)
for (j=0,j<5,j++) {
mat[i][j]=some value;
}

0

Решение

В отличие от C, в PHP вам не нужно определять размер массива, вам даже не нужно указывать PHP, что это массив. Поэтому будет работать следующий код:

for($i=0,$i<5,$i++) {
for ($j=0,$j<5,$j++) {
$mat[$i][$j]= "some value";
}
}
0

Другие решения

 $matrix = array (
array(1,2,3),
array(4,5,6),
array(7,8,9)
);

Это массив 2 d, который составляет матрицу 3 * 3. $matrix[1][1] вернется 5

На ваш вопрос

$mat = array();
for($i=0,$i<5,$i++)
for ($j=0$,$j<5,$j++) {
$mat[$i][$j]=some value;
}

Или исправить массив до определенного размера

$mat = new SplFixedArray(5);
for($i=0,$i<5,$i++){
$mat[$i] = new SplFixedArray(5);
for ($j=0$,$j<5,$j++) {
$mat[$i][$j]=some value;
}
}
1

Вы можете сделать это так:

$myArray = [[0,1,2],[3,4,5],[6,7,8]];

for($i=0,$i<count($myArray),$i++) {
for ($j=0,j<count($myArray[i]),j++) {
$mat[i][j]=some value;
}
}
0
По вопросам рекламы [email protected]