Как правильно заполнить двумерный массив на php?

Пользователь

от stephania , в категории: PHP , год назад

Как правильно заполнить двумерный массив на php?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от brooklyn , год назад

@stephania 

Для заполнения двумерного массива на PHP, вы можете использовать циклы. Ниже приведен пример заполнения двумерного массива размером 3x3:

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

for ($i = 0; $i < 3; $i++) {
    for ($j = 0; $j < 3; $j++) {
        $matrix[$i][$j] = $i + $j; // или любое другое значение
    }
}


В результате выполнения этого кода, вы получите заполненный двумерный массив $matrix:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Array
(
    [0] => Array
        (
            [0] => 0
            [1] => 1
            [2] => 2
        )

    [1] => Array
        (
            [0] => 1
            [1] => 2
            [2] => 3
        )

    [2] => Array
        (
            [0] => 2
            [1] => 3
            [2] => 4
        )
)


Можно также использовать другие значения или логику для заполнения двумерного массива в циклах в зависимости от ваших потребностей.

Пользователь

от hoyt.jerde , 6 месяцев назад

@stephania 

В дополнение к примеру выше, давайте рассмотрим более общий способ создания и заполнения двумерного массива на PHP.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
$rows = 3;
$cols = 3;
$matrix = array();

for ($i = 0; $i < $rows; $i++) {
    for ($j = 0; $j < $cols; $j++) {
        $matrix[$i][$j] = $i * $cols + $j + 1;
    }
}

// Вывод двумерного массива
foreach ($matrix as $row) {
    echo implode(" ", $row) . "
";
}


В приведенном выше примере создается и заполняется двумерный массив размером 3x3 с числами от 1 до 9. Мы используем формулу $i * $cols + $j + 1 для генерации значений в массиве. Для вывода массива на экран используется цикл foreach.


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