16
Bacharel em Ciência da Computação (UFG) Especializando em Engenharia de Software Analista de Sistemas – SIGMA / MDIC Professor Formador EAD – NEAD/ETEB [email protected] http://www.georgemendonca.com.br Array

PHP 5.3 - Arrays

Embed Size (px)

DESCRIPTION

Arrays em PHP.

Citation preview

Page 1: PHP 5.3 - Arrays

Bacharel em Ciência da Computação (UFG) Especializando em Engenharia de Software

Analista de Sistemas – SIGMA / MDIC

Professor Formador EAD – NEAD/ETEB [email protected]

http://www.georgemendonca.com.br

Array

Page 2: PHP 5.3 - Arrays

• Introdução

– Um array no PHP é atualmente um mapa ordenado.

– Um mapa é um tipo que relaciona valores para chaves.

– Este tipo é otimizado de várias maneiras, então você pode

usá-lo como um array real, ou uma lista (vetor), hashtable

(que é uma implementação de mapa), dicionário, coleção,

pilha, fila e provavelmente mais.

– Como você pode ter outro array PHP como um valor, você

pode facilmente simular árvores.

Array

13/02/2011 2

Page 3: PHP 5.3 - Arrays

• Introdução

– Arrays simples e multidimensionais (matrizes) são

suportados, e podem ser criados pelo usuário ou por

outras funções.

– Existem diversas funções específicas para bancos de

dados para preencher arrays com os dados retornados em

consultas, e vários outros tipos de funções que também

retornam arrays.

Array

13/02/2011 3

Page 4: PHP 5.3 - Arrays

• Especificando um array

– Um array pode ser criado com o construtor de linguagem

array(). Ele pega um certo número de pares separados por

vírgula chave => valor .

Array

13/02/2011 4

array( chave => valor,

, ...

);

Page 5: PHP 5.3 - Arrays

• Exemplo prático com array

Array

13/02/2011 5

$a1 = array( 'cor' => 'vermelha',

'sabor' => 'doce' ,

'forma' => 'redonda' ,

'nome' => 'maçã' ,

4 ); // a chave será 0

// isto é equivalente ao de cima

$a2['cor'] = 'vermelha';

$a2['sabor'] = 'doce';

$a2['forma'] = 'redonda';

$a2['nome'] = 'maçã';

$a2[] = 4; // a chave será 0

$b1[] = 'a';

$b1[] = 'b';

$b1[] = 'c'; // equivale as duas atribuições abaixo

$b2 = array( 0 => 'a' , 1 => 'b' , 2 => 'c' );

$b3 = array('a', 'b', 'c');

Page 6: PHP 5.3 - Arrays

• Exemplo prático com array

Array

13/02/2011 6

echo "<pre>";

print_r($a1);

print_r($a2);

print_r($b1);

print_r($b2);

print_r($b3);

Saída:

Array ( [cor] => vermelha [sabor] => doce [forma] => redonda [nome] => maçã [0] => 4 ) Array ( [cor] => vermelha [sabor] => doce [forma] => redonda [nome] => maçã [0] => 4 ) Array ( [0] => a [1] => b [2] => c ) Array ( [0] => a [1] => b [2] => c ) Array ( [0] => a [1] => b [2] => c )

Page 8: PHP 5.3 - Arrays

• Funções úteis para Array

– is_array • Verifica se a variável é um array.

– array_key_exists

• Checa se uma chave ou índice existe em um array.

Array

13/02/2011 8

<?php

$arrFormCad =

array(

"NOME" => "George Mendonça"

,"CPF" => "777777777-77"

,"RG" => "8.888.888"

);

echo is_array($arrFormCad); # 1

echo array_key_exists("CEP", $arrFormCad); #

Page 9: PHP 5.3 - Arrays

• Funções úteis para Array

– array_combine

• Cria um array usando um array para chaves e outro para valores.

– array_merge

• Funde um ou mais arrays.

Array

13/02/2011 9

<?php

$arr1 = array(10, 11, 12, 13, 14);

$arr2 = array(20, 21, 22, 23, 24);

print "<pre>";

print_r(array_combine($arr1, $arr2));

print_r(array_merge($arr1, $arr2));

Saída:

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

Page 10: PHP 5.3 - Arrays

• Funções úteis para Array

– array_push

• Adiciona um ou mais elementos no final de um

array

– array_pop

• Retira um elemento do final do array.

Array

13/02/2011 10

<?php

$pilha = array("1º", "2º", "3º", "4º", "5º");

echo "<pre>";

print_r($pilha);

array_push($pilha, "6º", "7º");

print_r($pilha);

$elemento = array_pop($pilha);

print_r($pilha);

echo $elemento;

Saída:

Array ( [0] => 1º [1] => 2º [2] => 3º [3] => 4º [4] => 5º ) Array ( [0] => 1º [1] => 2º [2] => 3º [3] => 4º [4] => 5º [5] => 6º [6] => 7º ) Array ( [0] => 1º [1] => 2º [2] => 3º [3] => 4º [4] => 5º [5] => 6º ) 7º

Page 11: PHP 5.3 - Arrays

• Funções úteis para Array

– array_unshift()

• Adiciona um ou mais elementos no início de um array.

– array_shift

• Retira o primeiro elemento de um array.

Array

13/02/2011 11

<?php

$elementos = array("1º", "2º", "3º", "4º", "5º");

echo "<pre>";

print_r($elementos);

array_unshift($elementos, "6º", "7º");

print_r($elementos);

$elementoRemovido = array_shift($elementos);

print_r($elementos);

echo $elementoRemovido;

Saída:

Array ( [0] => 1º [1] => 2º [2] => 3º [3] => 4º [4] => 5º ) Array ( [0] => 6º [1] => 7º [2] => 1º [3] => 2º [4] => 3º [5] => 4º [6] => 5º ) Array ( [0] => 7º [1] => 1º [2] => 2º [3] => 3º [4] => 4º [5] => 5º ) 6º

Page 12: PHP 5.3 - Arrays

• Funções úteis para Array

– array_search

• Procura por um valor em um array e retorna sua chave

correspondente caso seja encontrado.

Array

13/02/2011 12

<?php

$alunos = array(

'Evandro'

,'Francisco'

,'Ismael'

,'Madson'

,'Sérgio'

,'Thaís'

);

$chave = array_search("Francisco", $alunos);

echo $chave."<br />"; # 1

$chave = array_search("Arnaldo", $alunos);

echo $chave."<br />"; #

Page 13: PHP 5.3 - Arrays

• Funções úteis para Array

– array_sum

• Calcula a soma dos elementos de um array.

– array_reverse

• Retorna um array com os elementos na ordem inversa.

Array

13/02/2011 13

<?php

$elementos = array(4, 55, 76, 2, 104);

$soma = array_sum($elementos);

echo $soma;

echo "<pre>";

$elementos_invertidos = array_reverse($elementos);

print_r($elementos_invertidos);

Saída: 241 Array ( [0] => 104 [1] => 2 [2] => 76 [3] => 55 [4] => 4 )

Page 14: PHP 5.3 - Arrays

• Funções úteis para Array

– asort

• Ordena um array em ordem crescente dos valores

mantendo a associação entre índices e valores

– arsort

• Ordena um array em ordem decrescente mantendo a

associação entre índices e valores.

Array

13/02/2011 14

<?php

$elementos = array(4, 55, 76, 2, 104);

echo "<pre>";

print_r($elementos);

asort($elementos);

print_r($elementos);

arsort($elementos);

print_r($elementos);

Saída: Array ( [0] => 4 [1] => 55 [2] => 76 [3] => 2 [4] => 104 ) Array ( [3] => 2 [0] => 4 [1] => 55 [2] => 76 [4] => 104 ) Array ( [4] => 104 [2] => 76 [1] => 55 [0] => 4 [3] => 2 )

Page 15: PHP 5.3 - Arrays

• Funções úteis para Array

– count

• Conta o número de elementos de uma variável, ou propriedades

de um objeto.

– array_count_values

• Conta as frequências de cada valor de um array.

Array

13/02/2011 15

<?php

$elementos = array(3, 5, 9, 3, 3, 22, 9, 3, 3, 9, 22, 21);

$numeroElementos = count($elementos);

$frequenciaElementos = array_count_values($elementos);

echo "Número de elementos: $numeroElementos";

echo '<pre>';

print_r($frequenciaElementos);

Saída: Número de elementos: 12 Array ( [3] => 5 [5] => 1 [9] => 3 [22] => 2 [21] => 1 )

Page 16: PHP 5.3 - Arrays

• Funções úteis para Array

– array_unique

• Remove o valores duplicados de um array.

– array_intersect

• Calcula a interseção entre arrays

Array

13/02/2011 16

<?php

$elementos1 = array(1,2,10,10,10,15,2,7,1);

$elementos2 = array(3,3,1,5,5,25,7,7,4,4,10);

$elementos1u = array_unique($elementos1);

$elementos2u = array_unique($elementos2);

$intersecao = array_intersect($elementos1, $elementos2);

echo '<pre>';

print_r($elementos1u);

print_r($elementos2u);

print_r($intersecao);

Saída: Array ( [0] => 1 [1] => 2 [2] => 10 [5] => 15 [7] => 7 ) Array ( [0] => 3 [2] => 1 [3] => 5 [5] => 25 [6] => 7 [8] => 4 [10] => 10 ) Array ( [0] => 1 [2] => 10 [3] => 10 [4] => 10 [7] => 7 [8] => 1 )