Arrays Multidimensionais

Os arrays multidimensionais são estruturas de dados que lhe permitem manipular uma dada informação onde você compõe um array com outros arrays dentro dele. Vejamos o exemplo abaixo:

$array_multidimensional = [
    [1,2,3],
    [4,5,6],
    [7,8,9],
];

A primeira declaração após nome da variável é referente a declaração de um array. Pois em PHP podemos declarar um array através dos caracteres de colchetes [] ou pela palavra chave array() que significa a mesma coisa.

Confira as duas formas de declaração abaixo:

 
$array_com_colchetes = [1,2,3];
$array_com_por_palavra_chave = array(1,2,3); 

As duas formas de declaração, resultam no mesmo resultado.

Mas seguindo o foco desta artigo, vejamos abaixo um outro exemplo de um array multidimensional onde iremos percorrer por cada um de seus elementos. Confira o código abaixo:

//declaração da variável chamada conjunto_de_conjuntos que e um array multidimensional.
$conjunto_de_conjuntos = [
    [1,2,3],
    [4,5,6], 
    [6,8,9]
];
//aqui iniciamos o laço para percorrer todos os elementos do array.
foreach($conjunto_de_conjuntos as $indice_do_conjunto => $conjunto) {
    //neste segunda laço, estamos percorrendo o array que se encontra na primeira posição 
    //do array conjunto_de_conjuntos .
    foreach ($conjunto as $numero_de_cada_conjunto) {
        //e para cada elemento neste array (que são 1 ,2 e 3). 
        //nos vamos imprimir na tela o resultado
        echo $numero_de_cada_conjunto . ' - ';
    }
    //aqui pulamos a linha através de um comando HTML chamado <br>
    echo '<br>';
}

Observe que um array multidimensional pode ser acessado diretamente por sua posição. Pois da mesma forma que podemos acessar uma posição de um array simples, também podemos acessar via posição direta a informação que esteja dentro de um array multidimensional.

 
$array_multidimensional = [
    [1,2,3], //posicao 0 do array_multidimensional 
    [4,5,6], //posicao 1 do array_multidimensional 
    [7,8,9]  //posicao 2 do array_multidimensional 
];

/*
[1,2,3] é um array e por conta disso...
o valor 1 está na posição 0
o valor 2 está na posição 1
o valor 3 está na posição 2
A mesma regra vale para os array internos
[4,5,6] (que se encontra a posicao 1 do array array_multidimensional ) 
e 
[7,8,9] (que se encontra a posicao 2 do array array_multidimensional ) 
*/

Para acessar a posição de onde se encontra o valor 7 neste array. Apenas precisamos saber que ele se encontra no array de índice 2 que esta dentro de $array_multidimensional. E nesta posição de índice 2 temos o array [7,8,9] onde o valor 7 esta no índice 0.

Portanto se eu acessar a variável $array_multidimensional passando as devidas posições 2 e 0 eu consigo obter o valor de numero 7.


$array_multidimensional[2][0]; //resultado: 7

Para obter outros valores, basta passar a sua posição adequada conforme o exemplo acima.

Loading