Blog EspecializaTi
Carlos Ferreira Por: Carlos Ferreira Comentar

Principais Funções de Arrays no PHP

Principais Funções de Arrays no PHP

O PHP é um linguagem muito simples e robusta, especialmente depois da versão 7, isso todo mundo já sabe.

Porém algo muito útil e pouco utilizado são os recursos de funções que a linguagem dispõem para manipular funções de uma forma mais simples e rápida.

Neste tutorial separei algumas das principais funções e mais utilizadas por desenvolvedores (as) para manipular arrays.

 
 
 

Criando um Array no PHP:

Primeiramente vamos criar um array no PHP. Primeiro vamos criar um array de forma mais simples utilizando o recurso da função array() que é uma função antiga, porém ainda muito utilizada, depois vamos criar um array com a forma mais atual de trabalhar com arrays.

// Criando um array PHP <= 5.4 (Também funciona nas versões mais recentes)
$fruits = array('Uva', 'Abacaxi', 'Abacate');
// Para imprimir algo: echo $fruits[0]; // Uva

// Criando array PHP >= 5.5 (Veja como é mais simples!)
$fruits = ['Uva', 'Abacaxi', 'Abacate'];

Em resumo, é possível criar arrays utilizando a função array() ou simplesmente utilizando [].

 
 

Verificar se é um Array:

Uma função extremamente útil é a is_array() ela simplesmente verifica se um valor é um array, veja os exemplos:

$fruits = ['Uva', 'Abacaxi', 'Abacate'];
$name = 'Carlos Ferreira';

if (is_array($fruits))
	echo 'É um array!';

if (is_array($name))
	echo 'É um array!';
else
	echo 'Não é um array';

 
 

Verifica se um Valor Existe no Array:

Uma função que certamente hora ou outra quando você estiver desenvolvendo com PHP irá precisar e será muito útil é a função in_array(), essa função basicamente verifica se existe um valor no array. Veja:

$especializati = ['Eti', 'Cursos', 'Online'];

if (in_array('Cursos', $especializati))
	echo 'Sim, faz cursos!';
else
	echo 'Não faz cursos!';

Outro exemplo:
$especializati = [
	'name' => 'EspecializaTI',
	'foundation' => 2014,
	'trainings' => [
		'PHP',
		'JS',
		'HTML5',
		'Laravel',
	]
];

if (in_array('PHP', $especializati['trainings']))
	echo 'Sim, tem curso de PHP';

 
 

Recuperar as Chaves de um Array:

Um array pode ser composto, ou seja, ter uma chave e valor.
// array(‘chave’ => ‘valor’);
// [‘chave’, ‘valor’];
Quando cria um array que não é composto (com chave e valor) e chave fica enumerada de forma crescente, partindo de 0
// [1,2,3,4] => Igual: [0 => 1, 1 => 2, 2 => 3, 3 => 4]

A função array_keys() permite recuperar as chaves (indíces) de um array.

$especializati = [
	'name' => 'EspecializaTI',
	'foundation' => 2014,
	'trainings' => [
		'PHP',
		'JS',
		'HTML5',
		'Laravel',
	]
];

var_dump(array_keys($especializati));
// Resultado: ['name', 'foundation', 'trainings'];

 
 

Recuperar Apenas os Valores do Array:

O contrário da função array_keys() que retorna as chaves do array, a função array_values() recupera os valores de um array, veja:

$especializati = [
	'name' => 'EspecializaTI',
	'foundation' => 2014,
	'trainings' => [
		'PHP',
		'JS',
		'HTML5',
		'Laravel',
	]
];

var_dump(array_values($especializati));
/* Resultado:
[
	'EspecializaTI',
	2014,
	[
		'PHP',
		'JS',
		'HTML5',
		'Laravel',
	]
];
*/

 
 

Contar o Tamanho do Array:

É muito importante em alguns momentos conseguir identificar o tamanho do array, ou seja, a quantidade de elementos do mesmo, e para isso existe a função count(), veja como é simples utilizar:

$especializati = [
	'name' => 'EspecializaTI',
	'foundation' => 2014,
	'trainings' => [
		'PHP',
		'JS',
		'HTML5',
		'Laravel',
	]
];

echo count($especializati);
// Resultado: 3

 
 

Juntar Um ou Mais Arrays (Combinar):

No PHP também é possível combinar valores de arrays, ou seja, unir eles. E a função que faz isso é a array_merge(), veja como utilizar:

$especializati = [
	'name' => 'EspecializaTI',
	'foundation' => 2014,
];
$trainings = [
	'trainings' => [
		'PHP',
		'JS',
		'HTML5',
		'Laravel',
	]
];

var_dump( array_merge($especializati, $trainings) );
Resultado:
/*
[
	'name' => 'EspecializaTI',
	'foundation' => 2014,
	'trainings' => [
		'PHP',
		'JS',
		'HTML5',
		'Laravel',
	]
]
*/

 
 

Remover o Último Elemento do Array:

É muito comum precisar remover o último elemento de um array, e para isso pode desfrutar da função array_pop(), veja como utilizar:

$fruits = ['Uva', 'Abacaxi', 'Abacate', 'Laranja'];

array_pop($fruits);

var_dump($fruits);
// Resultado: 'Uva', 'Abacaxi', 'Abacate'

 
 

Remover o Primeiro Elemento de um Array:

Seguindo o mesmo raciocínio da função array_pop() a função array_shift() remove o primeiro elemento de um array, veja o exemplo:

$fruits = ['Laranja', 'Uva', 'Abacaxi', 'Abacate'];

array_shift($fruits);

var_dump($fruits);
// Resultado: 'Uva', 'Abacaxi', 'Abacate'

 
 

Adicionar um Novo Elemento no Final do Array:

Certamente quando estiver trabalhando com arrays vai precisar adicionar mais elementos ao mesmo, existem muitas formas de fazer isso, porém a mais simples é utilizar a função array_push() que adiciona um ou mais elementos no final do array:

$fruits = ['Laranja', 'Uva', 'Abacaxi', 'Abacate'];

$newFruit = 'Tangerina';
array_push($fruits, $newFruit);

var_dump($fruits);
// Resultado: 'Laranja', 'Uva', 'Abacaxi', 'Abacate', 'Tangerina'

 
 

Adicionar um Novo Elemento no Inicio do Array:

Da mesma forma que é possível adicionar um novo elemento no final de um array é possível adicionar no início com a função array_unshift(), veja:

$cart = ['Arroz', 'Feijão', 'Macarrão', 'Batata'];

$newItem = 'Extrato';
array_unshift($cart, $newItem);

var_dump($cart);
// Resultado: 'Extrato', 'Arroz', 'Feijão', 'Macarrão', 'Batata'

 
 

Remover Elementos Repetidos de um Array:

É muito comum quando se está manipulando array ter itens repetidos, ou seja, itens com o mesmo nome, neste caso muito útil utilizar a função array_unique() para remover itens duplicados. Veja o exemplo:

$cart = ['Arroz', 'Feijão', 'Macarrão', 'Batata', 'Arroz', 'Batata'];

$cart = array_unique($cart);

var_dump($cart);
// Resultado: 'Arroz', 'Feijão', 'Macarrão', 'Batata'

 
 

Ordena um Array em Ordem Decrescente:

É possível ordenar os elementos de um array de forma decrescente com a função arsort(), note no exemplo abaixo que essa função ordena os itens pelos values, e não pelas chaves:

$cart = [
	1 => 'Feijão',
	0 => 'Arroz',
	2 => 'Macarrão',
	3 => 'Batata',
];

arsort($cart);

var_dump($cart);
/*
Resultado: 
[
	2 => 'Macarrão',
	1 => 'Feijão',
	3 => 'Batata',
	0 => 'Arroz'
]
*/

 
 

Ordena um Array em Ordem Crescente:

Ao contrário da função arsort() o PHP dispõe da função asort() que ordena um array de forma crescente, ou seja, em ordem alfabética:

$cart = [
	1 => 'Feijão',
	0 => 'Arroz',
	2 => 'Macarrão',
	3 => 'Batata',
];

asort($cart);

var_dump($cart);
/*
Resultado: 
[
	0 => 'Arroz',
	3 => 'Batata',
	1 => 'Feijão',
	2 => 'Macarrão'
]

*/

 
 

Ordenar um Array:

Também é possível ordenar um array com sort(), essa função é mais comum, porque também organiza os índices do array:

$cart = [
	1 => 'Feijão',
	0 => 'Arroz',
	2 => 'Macarrão',
	3 => 'Batata',
];

sort($cart);

var_dump($cart);
/*
Resultado: 
[
	0 => 'Arroz',
	3 => 'Batata',
	1 => 'Feijão',
	2 => 'Maracarrão'
]
*/

 
 

Criar Arrays com Variáveis:

Já aprendemos que é possível criar arrays com a função array() e []
Também é possível utilizar a função compact() para criar um array a partir do nome de variáveis. Veja como esse recurso facilita:

$name = 'Carlos Ferreira';
$email = '[email protected]';
$company = 'EspecializaTi';
$courses = [
	'PHP',
	'JS',
	'HTML5',
	'Laravel',
];

$info = compact('name', 'email', 'company', 'courses');

var_dump($info);
/*
Resultado:
[
    'name' => Carlos Ferreira
    'email' => [email protected]
    'company' => EspecializaTi
    'courses' => [
        PHP,
        JS,
        HTML5,
        Laravel,
    ]

]
*/

 
 

Recuperar o Último Elemento de um Array:

Embora seja possível recuperar o último elemento de um array é infinitamente mais simples utilizar a função end() para fazer veja dois exemplos:

$cart = [
	'Feijão',
	'Arroz',
	'Maracarrão',
	'Batata',
];

// Recuperando o último elemento
echo $cart[count($cart) -1]; // Resultado: Batata

// Recuperando com end()
echo end($cart); // Resultado: Batata

 
 

Filtrar Elementos de um Array:

A função array_filter() permite filtrar os elementos de um array com base em uma função de callback, veja neste exemplo vamos deixar o array apenas com os valores que sejam maior que 10, por exemplo:

$numbers = [1, 2, 726, 5, 6, 788, 900, 212, 2, 3, 1998];

function checkNumber($value)
{
	return $value >= 10;
}

$numbers = array_filter($numbers, 'checkNumber');

var_dump($numbers);
// Resultado: [726, 788, 900, 212, 1998]

 
 

Alterar Elementos de um Array:

Outra função extremamente útil é array_map(), essa função permite fazer alterações nos elementos dos arrays passando uma função de callback. Neste exemplo vamos transformar os caracteres em maiúsculo:

// Array com os itens
$cart = [
	'Uva',
	'Arroz',
	'Maionese',
	'Batata',
];

function changeUppercase($value)
{
	return strtoupper($value);
}

$cart = array_map('changeUppercase', $cart);

var_dump($cart);
/*
Resultado:
[
	'UVA',
	'ARROZ',
	'MAIONESE',
	'BATATA',
]
*/

 
 

Bom esse tutorial finaliza aqui, espero que tenha gostado este compacto das principais funções para manipulação de arrays no PHP, se tiver alguma dúvida ou sugestão por favor deixe aquele comentário. 🙂

 

Abraços []’s

 
 

Carlos Ferreira

Sobre o Autor:

Carlos Ferreira

Carlos Ferreira é Analista de Sistemas Experiente, Empreendedor, Fundador da empresa EspecializaTi. Certificações: Comptia Linux +, LPI, Novell Certification.

Todos os direitos reservados © 2019 - EspecializaTi. É proibida a reprodução total ou parcial deste conteúdo.