Matriz PHP

Resumo : neste tutorial, você aprenderá sobre arrays PHP e como manipular elementos de array de forma eficaz.

Introdução aos arrays PHP

Por definição, um array é uma lista de elementos. Assim, por exemplo, você pode ter um array que contém uma lista de produtos.

PHP fornece dois tipos de arrays: indexados e associativos.

As chaves do array indexado são inteiros que começam em 0. Normalmente, você usa arrays indexados quando deseja acessar os elementos por suas posições.

As chaves de uma matriz associativa são strings. E você usa matrizes associativas quando deseja acessar elementos por chaves de string.

Este tutorial se concentra na matriz indexada.

Criando matrizes

Em PHP, você pode usar a array()sintaxe construct ou [] para definir um array. A []sintaxe é mais curta e mais conveniente.

1) Criando um array usando a construção array()

Para definir um array, você usa a array()construção. O exemplo a seguir cria um array vazio:

<?php

$empty_array = array();Linguagem de código:  HTML, XML  ( xml )

Para criar uma matriz com alguns elementos iniciais, você coloca uma lista de elementos separados por vírgula entre parênteses da array()construção.

Por exemplo, o seguinte define uma matriz que possui três números:

<?php

$scores = array(1, 2, 3);Linguagem de código:  HTML, XML  ( xml )

2) Criando um array usando a sintaxe []

PHP fornece uma maneira mais conveniente de definir arrays com a sintaxe mais curta [], conhecida como notação JSON. O exemplo a seguir usa []sintaxe para criar um novo array vazio:

<?php

$empty_array = [];Linguagem de código:  HTML, XML  ( xml )

O exemplo a seguir usa a []sintaxe para criar uma nova matriz que consiste em três números:

<?php

$scores = [1, 2, 3];Linguagem de código:  HTML, XML  ( xml )

Exibindo matrizes

Para mostrar o conteúdo de um array, você usa a var_dump()função. Por exemplo:

<?php

$scores = [1, 2, 3];
var_dump($scores);Linguagem de código:  HTML, XML  ( xml )

Saída:

array(3) {
  [0]=> int(1)
  [1]=> int(2)
  [2]=> int(3)
}Linguagem de código:  PHP  ( php )

Ou você pode usar a print_r()função:

<?php

$scores = array(1, 2, 3);
print_r($scores);Linguagem de código:  HTML, XML  ( xml )
Array
(
    [0] => 1
    [1] => 2
    [2] => 3
)Linguagem de código:  PHP  ( php )

Para tornar a saída mais legível, você pode agrupar a saída da print_r()função dentro de uma <pre>tag. Por exemplo:

<?php

$scores = [1, 2, 3];

echo '<pre>';
print_r($scores);
echo '</pre>';Linguagem de código:  HTML, XML  ( xml )

Saída:

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
)Linguagem de código:  PHP  ( php )

É mais conveniente definir uma função que imprima um array como este:

<?php

function print_array($data)
{
	echo '<pre>';
	print_r($data);
	echo '</pre>';
}

$scores = [1, 2, 3];

print_array($scores);Linguagem de código:  HTML, XML  ( xml )

Saída:

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
)Linguagem de código:  PHP  ( php )

E então você pode reutilizar a função sempre que quiser exibir um array.

Acessando elementos do array

Para acessar um elemento em uma matriz, você especifica o índice do elemento entre colchetes:

$array_name[index]Linguagem de código:  PHP  ( php )

Observe que o índice do primeiro elemento de um array começa com zero, não com um.

O exemplo a seguir mostra como acessar o primeiro elemento do array:

<?php

$scores = [1, 2, 3];
echo $scores[0];Linguagem de código:  HTML, XML  ( xml )

Saída:

1

Adicionando um elemento ao array

Para adicionar um elemento a um array, você usa a seguinte sintaxe:

$array_name[] = new_element;Linguagem de código:  PHP  ( php )

O PHP calculará o índice numérico mais alto mais um cada vez que você atribuir um elemento ao array.

O exemplo a seguir mostra como adicionar o número 4 ao array $scores:

<?php

$scores = [1, 2, 3];
$scores[] = 4;Linguagem de código:  HTML, XML  ( xml )

Neste exemplo, definimos inicialmente um array que consiste em três números. Em seguida, adicionamos o número 4 ao array.

É possível usar um índice ao adicionar um novo elemento ao array. Por exemplo:

$scores = [1, 2, 3];
$scores[3] = 4;Linguagem de código:  PHP  ( php )

Mas para fazer isso, você terá que calcular o novo índice manualmente. Não é prático. Além disso, se o índice já estiver em uso, o valor será substituído.

Alterando elementos do array

A instrução a seguir altera o elemento localizado em indexpara $new_element:

$array_name[index] = $new_element;Linguagem de código:  PHP  ( php )

Por exemplo, para alterar o primeiro elemento do $scoresarray de 1 para zero, faça o seguinte:

<?php

$scores = [1, 2, 3];
$scores[0] = 0;Linguagem de código:  HTML, XML  ( xml )

Removendo elementos do array

Para remover um elemento de um array, você usa a unset()função. O seguinte remove o segundo elemento da $scoresmatriz:

<?php

$scores = [1, 2, 3];
unset($scores[1]);Linguagem de código:  HTML, XML  ( xml )

Obtendo o tamanho de um array

Para obter o número de elementos em um array, você usa a count()função. Por exemplo:

<?php

$scores = [1, 2, 3, 4, 5];

echo count($scores);Linguagem de código:  HTML, XML  ( xml )

Saída:

5

Resumo

  • Use a array()construção ou []sintaxe para criar uma nova matriz.
  • Para a matriz indexada, o primeiro índice começa com zero.
  • Para acessar um elemento do array, use um índice entre colchetes $array_name[index].
  • Use a count()função para obter o número de elementos em uma matriz.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *