SlideShare a Scribd company logo
1 of 16
Download to read offline
Bacharel em Ciência da Computação (UFG)
Especializando em Engenharia de Software
Analista de Sistemas – SIGMA / MDIC
Professor Formador EAD – NEAD/ETEB
george@georgemendonca.com.br
http://www.georgemendonca.com.br
Array
• 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
• 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
• 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,
, ...
);
• 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');
• 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
)
• Operadores
Array
13/02/2011 7
• 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); #
• 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
)
• 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º
• 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º
• 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 />"; #
• 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
)
• 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
)
• 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
)
• 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
)

More Related Content

What's hot

Orientação a Objetos em PHP
Orientação a Objetos em PHPOrientação a Objetos em PHP
Orientação a Objetos em PHPzehzinho
 
(A13) LabMM3 - JavaScript - Arrays multidimensionais
(A13) LabMM3 - JavaScript - Arrays multidimensionais(A13) LabMM3 - JavaScript - Arrays multidimensionais
(A13) LabMM3 - JavaScript - Arrays multidimensionaisCarlos Santos
 
LabMM4 (T15 - 12/13) - Arrays
LabMM4 (T15 - 12/13) - ArraysLabMM4 (T15 - 12/13) - Arrays
LabMM4 (T15 - 12/13) - ArraysCarlos Santos
 
Fugindo das armadilhas do MVC
Fugindo das armadilhas do MVCFugindo das armadilhas do MVC
Fugindo das armadilhas do MVCEdiaimo Borges
 
Zend Framework - PHPSP - 2009
Zend Framework - PHPSP - 2009Zend Framework - PHPSP - 2009
Zend Framework - PHPSP - 2009silva.edgar
 
Proxy, Man-In-The-Middle e testes
Proxy, Man-In-The-Middle e testesProxy, Man-In-The-Middle e testes
Proxy, Man-In-The-Middle e testesStanislaw Pusep
 
Programando em python dicionarios
Programando em python   dicionariosProgramando em python   dicionarios
Programando em python dicionariossamuelthiago
 
Refactoring sem complicação!
Refactoring sem complicação!Refactoring sem complicação!
Refactoring sem complicação!Thamara Hessel
 
Object Calisthenics: relaxe e escreva códigos simples
Object Calisthenics: relaxe e escreva códigos simplesObject Calisthenics: relaxe e escreva códigos simples
Object Calisthenics: relaxe e escreva códigos simplesOtávio Calaça Xavier
 
Palestra python
Palestra pythonPalestra python
Palestra pythonRony Cruch
 
PHPubSP Object Calisthenics aplicado ao PHP
PHPubSP Object Calisthenics aplicado ao PHPPHPubSP Object Calisthenics aplicado ao PHP
PHPubSP Object Calisthenics aplicado ao PHPGuilherme Blanco
 
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop PythonIEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop PythonDiogo Gomes
 

What's hot (20)

Python Class
Python ClassPython Class
Python Class
 
Resolução lista2
Resolução lista2Resolução lista2
Resolução lista2
 
Orientação a Objetos em PHP
Orientação a Objetos em PHPOrientação a Objetos em PHP
Orientação a Objetos em PHP
 
(A13) LabMM3 - JavaScript - Arrays multidimensionais
(A13) LabMM3 - JavaScript - Arrays multidimensionais(A13) LabMM3 - JavaScript - Arrays multidimensionais
(A13) LabMM3 - JavaScript - Arrays multidimensionais
 
LabMM4 (T15 - 12/13) - Arrays
LabMM4 (T15 - 12/13) - ArraysLabMM4 (T15 - 12/13) - Arrays
LabMM4 (T15 - 12/13) - Arrays
 
PHP MySQL Aula 07
PHP MySQL Aula 07PHP MySQL Aula 07
PHP MySQL Aula 07
 
Fugindo das armadilhas do MVC
Fugindo das armadilhas do MVCFugindo das armadilhas do MVC
Fugindo das armadilhas do MVC
 
Zend Framework - PHPSP - 2009
Zend Framework - PHPSP - 2009Zend Framework - PHPSP - 2009
Zend Framework - PHPSP - 2009
 
Capítulo 6
Capítulo 6Capítulo 6
Capítulo 6
 
Proxy, Man-In-The-Middle e testes
Proxy, Man-In-The-Middle e testesProxy, Man-In-The-Middle e testes
Proxy, Man-In-The-Middle e testes
 
Um pouco sobre sql
Um pouco sobre sqlUm pouco sobre sql
Um pouco sobre sql
 
Aula2
Aula2Aula2
Aula2
 
Programando em python dicionarios
Programando em python   dicionariosProgramando em python   dicionarios
Programando em python dicionarios
 
Haskell aula3 listas
Haskell aula3 listasHaskell aula3 listas
Haskell aula3 listas
 
Refactoring sem complicação!
Refactoring sem complicação!Refactoring sem complicação!
Refactoring sem complicação!
 
Object Calisthenics: relaxe e escreva códigos simples
Object Calisthenics: relaxe e escreva códigos simplesObject Calisthenics: relaxe e escreva códigos simples
Object Calisthenics: relaxe e escreva códigos simples
 
Palestra python
Palestra pythonPalestra python
Palestra python
 
PHPubSP Object Calisthenics aplicado ao PHP
PHPubSP Object Calisthenics aplicado ao PHPPHPubSP Object Calisthenics aplicado ao PHP
PHPubSP Object Calisthenics aplicado ao PHP
 
PHP ao Extremo
PHP ao ExtremoPHP ao Extremo
PHP ao Extremo
 
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop PythonIEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
 

Similar to PHP 5.3 - Arrays

Arrays PHP - Criação de sites II
Arrays PHP - Criação de sites IIArrays PHP - Criação de sites II
Arrays PHP - Criação de sites IIinfo_cimol
 
PW03 - Programação Web PHP Arrays (Vetores)
PW03 - Programação Web PHP Arrays (Vetores)PW03 - Programação Web PHP Arrays (Vetores)
PW03 - Programação Web PHP Arrays (Vetores)Silvano Oliveira
 
Perl Moderno, dia3
Perl Moderno, dia3Perl Moderno, dia3
Perl Moderno, dia3garux
 
Otimização e Escalabilidade
Otimização e EscalabilidadeOtimização e Escalabilidade
Otimização e Escalabilidademetzen
 
Vetores, Matrizes e Strings em C Parte 1
Vetores, Matrizes e Strings em C Parte 1Vetores, Matrizes e Strings em C Parte 1
Vetores, Matrizes e Strings em C Parte 1Elaine Cecília Gatto
 
Aula 5 PHP - Criação de sites II
Aula 5 PHP - Criação de sites IIAula 5 PHP - Criação de sites II
Aula 5 PHP - Criação de sites IIinfo_cimol
 
Apresentação j query5
Apresentação j query5Apresentação j query5
Apresentação j query5douglasgrava
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosRegis Magalhães
 
Programação web ii aulas 06 e 07
Programação web ii   aulas 06 e 07Programação web ii   aulas 06 e 07
Programação web ii aulas 06 e 07Yuri Bispo
 
LabMM4 (T11 - 12/13) - PHP - Tipos de dados e variáveis
LabMM4 (T11 - 12/13) - PHP - Tipos de dados e variáveisLabMM4 (T11 - 12/13) - PHP - Tipos de dados e variáveis
LabMM4 (T11 - 12/13) - PHP - Tipos de dados e variáveisCarlos Santos
 

Similar to PHP 5.3 - Arrays (20)

Arrays PHP - Criação de sites II
Arrays PHP - Criação de sites IIArrays PHP - Criação de sites II
Arrays PHP - Criação de sites II
 
PW03 - Programação Web PHP Arrays (Vetores)
PW03 - Programação Web PHP Arrays (Vetores)PW03 - Programação Web PHP Arrays (Vetores)
PW03 - Programação Web PHP Arrays (Vetores)
 
Perl Moderno, dia3
Perl Moderno, dia3Perl Moderno, dia3
Perl Moderno, dia3
 
Otimização e Escalabilidade
Otimização e EscalabilidadeOtimização e Escalabilidade
Otimização e Escalabilidade
 
Vetores, Matrizes e Strings em C Parte 1
Vetores, Matrizes e Strings em C Parte 1Vetores, Matrizes e Strings em C Parte 1
Vetores, Matrizes e Strings em C Parte 1
 
Aula 5 PHP - Criação de sites II
Aula 5 PHP - Criação de sites IIAula 5 PHP - Criação de sites II
Aula 5 PHP - Criação de sites II
 
Aula 02 - Curso PHP e MySQL
Aula 02 - Curso PHP e MySQLAula 02 - Curso PHP e MySQL
Aula 02 - Curso PHP e MySQL
 
Apresentação j query5
Apresentação j query5Apresentação j query5
Apresentação j query5
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
 
Php 02 Primeiros Passos
Php 02 Primeiros PassosPhp 02 Primeiros Passos
Php 02 Primeiros Passos
 
NotORM
NotORMNotORM
NotORM
 
PHP - Arrays
PHP - ArraysPHP - Arrays
PHP - Arrays
 
PHP Básico - Parte 3
PHP Básico - Parte 3PHP Básico - Parte 3
PHP Básico - Parte 3
 
Programação web ii aulas 06 e 07
Programação web ii   aulas 06 e 07Programação web ii   aulas 06 e 07
Programação web ii aulas 06 e 07
 
Manipulacao de arrays
Manipulacao de arraysManipulacao de arrays
Manipulacao de arrays
 
LabMM4 (T11 - 12/13) - PHP - Tipos de dados e variáveis
LabMM4 (T11 - 12/13) - PHP - Tipos de dados e variáveisLabMM4 (T11 - 12/13) - PHP - Tipos de dados e variáveis
LabMM4 (T11 - 12/13) - PHP - Tipos de dados e variáveis
 
Curso de Introdução - PHP
Curso de Introdução - PHPCurso de Introdução - PHP
Curso de Introdução - PHP
 
Linguagem R
Linguagem RLinguagem R
Linguagem R
 
Php
PhpPhp
Php
 
Linguagem C - Vetores
Linguagem C - VetoresLinguagem C - Vetores
Linguagem C - Vetores
 

More from George Mendonça

Iniciando na Programação com Python - FLISOL Paracatu 2016
Iniciando na Programação com Python - FLISOL Paracatu 2016Iniciando na Programação com Python - FLISOL Paracatu 2016
Iniciando na Programação com Python - FLISOL Paracatu 2016George Mendonça
 
Orientação a Objetos com Python e UML - XIII FGSL
Orientação a Objetos com Python e UML - XIII FGSLOrientação a Objetos com Python e UML - XIII FGSL
Orientação a Objetos com Python e UML - XIII FGSLGeorge Mendonça
 
Python - Orientação a Objetos com UML no Batismo Digital 3.0 da Faculdade JK ...
Python - Orientação a Objetos com UML no Batismo Digital 3.0 da Faculdade JK ...Python - Orientação a Objetos com UML no Batismo Digital 3.0 da Faculdade JK ...
Python - Orientação a Objetos com UML no Batismo Digital 3.0 da Faculdade JK ...George Mendonça
 
Software livre, história, paradigmas, comunidade e colaboração
Software livre, história, paradigmas, comunidade e colaboraçãoSoftware livre, história, paradigmas, comunidade e colaboração
Software livre, história, paradigmas, comunidade e colaboraçãoGeorge Mendonça
 
Criando Projetos de Software Livre no meio Acadêmico
Criando Projetos de Software Livre no meio AcadêmicoCriando Projetos de Software Livre no meio Acadêmico
Criando Projetos de Software Livre no meio AcadêmicoGeorge Mendonça
 
WordPress para Desenvolvedores - Utilizando WP como framework de desenvolvime...
WordPress para Desenvolvedores - Utilizando WP como framework de desenvolvime...WordPress para Desenvolvedores - Utilizando WP como framework de desenvolvime...
WordPress para Desenvolvedores - Utilizando WP como framework de desenvolvime...George Mendonça
 
Confirurando Dababase Development no Eclipse Luna
Confirurando Dababase Development no Eclipse LunaConfirurando Dababase Development no Eclipse Luna
Confirurando Dababase Development no Eclipse LunaGeorge Mendonça
 
Dominando o WordPress - A plataforma de sites e blogs mais popular do mundo
Dominando o WordPress - A plataforma de sites e blogs mais popular do mundoDominando o WordPress - A plataforma de sites e blogs mais popular do mundo
Dominando o WordPress - A plataforma de sites e blogs mais popular do mundoGeorge Mendonça
 
Libre Office Magazine Edição 11
Libre Office Magazine Edição 11Libre Office Magazine Edição 11
Libre Office Magazine Edição 11George Mendonça
 
Desenvolvendo Um Projeto de um Portal Responsivo com WordPress - 10° FGSL
Desenvolvendo Um Projeto de um Portal Responsivo com WordPress - 10° FGSLDesenvolvendo Um Projeto de um Portal Responsivo com WordPress - 10° FGSL
Desenvolvendo Um Projeto de um Portal Responsivo com WordPress - 10° FGSLGeorge Mendonça
 
Quebrando Paradigmas e Conhecendo o Movimento Software Livre
Quebrando Paradigmas e Conhecendo o Movimento Software LivreQuebrando Paradigmas e Conhecendo o Movimento Software Livre
Quebrando Paradigmas e Conhecendo o Movimento Software LivreGeorge Mendonça
 
Discutindo Governança e Gestão de Projetos com Ferramentas Livres
Discutindo Governança e Gestão de Projetos com Ferramentas LivresDiscutindo Governança e Gestão de Projetos com Ferramentas Livres
Discutindo Governança e Gestão de Projetos com Ferramentas LivresGeorge Mendonça
 
Desenvolvendo Um Projeto de Um Portal Responsivo Com WordPress
Desenvolvendo Um Projeto de Um Portal Responsivo Com WordPressDesenvolvendo Um Projeto de Um Portal Responsivo Com WordPress
Desenvolvendo Um Projeto de Um Portal Responsivo Com WordPressGeorge Mendonça
 
Oficina de PHP - Software Freedom Day Luziânia 2013
Oficina de PHP - Software Freedom Day Luziânia 2013Oficina de PHP - Software Freedom Day Luziânia 2013
Oficina de PHP - Software Freedom Day Luziânia 2013George Mendonça
 
Free Software in the Cloud - Deixe as Nuvens facilitar a sua vida com Softwar...
Free Software in the Cloud - Deixe as Nuvens facilitar a sua vida com Softwar...Free Software in the Cloud - Deixe as Nuvens facilitar a sua vida com Softwar...
Free Software in the Cloud - Deixe as Nuvens facilitar a sua vida com Softwar...George Mendonça
 
Palestra Batismo Digital como uma Ferramenta Social no Ensino de Software Liv...
Palestra Batismo Digital como uma Ferramenta Social no Ensino de Software Liv...Palestra Batismo Digital como uma Ferramenta Social no Ensino de Software Liv...
Palestra Batismo Digital como uma Ferramenta Social no Ensino de Software Liv...George Mendonça
 
Evangelismo e Missões - Elucidando o papel do cristão e da Igreja
Evangelismo e Missões - Elucidando o papel do cristão e da IgrejaEvangelismo e Missões - Elucidando o papel do cristão e da Igreja
Evangelismo e Missões - Elucidando o papel do cristão e da IgrejaGeorge Mendonça
 
Curriculum - George Mendonça
Curriculum - George MendonçaCurriculum - George Mendonça
Curriculum - George MendonçaGeorge Mendonça
 

More from George Mendonça (20)

Iniciando na Programação com Python - FLISOL Paracatu 2016
Iniciando na Programação com Python - FLISOL Paracatu 2016Iniciando na Programação com Python - FLISOL Paracatu 2016
Iniciando na Programação com Python - FLISOL Paracatu 2016
 
Orientação a Objetos com Python e UML - XIII FGSL
Orientação a Objetos com Python e UML - XIII FGSLOrientação a Objetos com Python e UML - XIII FGSL
Orientação a Objetos com Python e UML - XIII FGSL
 
Python - Orientação a Objetos com UML no Batismo Digital 3.0 da Faculdade JK ...
Python - Orientação a Objetos com UML no Batismo Digital 3.0 da Faculdade JK ...Python - Orientação a Objetos com UML no Batismo Digital 3.0 da Faculdade JK ...
Python - Orientação a Objetos com UML no Batismo Digital 3.0 da Faculdade JK ...
 
Software livre, história, paradigmas, comunidade e colaboração
Software livre, história, paradigmas, comunidade e colaboraçãoSoftware livre, história, paradigmas, comunidade e colaboração
Software livre, história, paradigmas, comunidade e colaboração
 
Criando Projetos de Software Livre no meio Acadêmico
Criando Projetos de Software Livre no meio AcadêmicoCriando Projetos de Software Livre no meio Acadêmico
Criando Projetos de Software Livre no meio Acadêmico
 
WordPress para Desenvolvedores - Utilizando WP como framework de desenvolvime...
WordPress para Desenvolvedores - Utilizando WP como framework de desenvolvime...WordPress para Desenvolvedores - Utilizando WP como framework de desenvolvime...
WordPress para Desenvolvedores - Utilizando WP como framework de desenvolvime...
 
Confirurando Dababase Development no Eclipse Luna
Confirurando Dababase Development no Eclipse LunaConfirurando Dababase Development no Eclipse Luna
Confirurando Dababase Development no Eclipse Luna
 
Dominando o WordPress - A plataforma de sites e blogs mais popular do mundo
Dominando o WordPress - A plataforma de sites e blogs mais popular do mundoDominando o WordPress - A plataforma de sites e blogs mais popular do mundo
Dominando o WordPress - A plataforma de sites e blogs mais popular do mundo
 
Libre Office Magazine Edição 11
Libre Office Magazine Edição 11Libre Office Magazine Edição 11
Libre Office Magazine Edição 11
 
Desenvolvendo Um Projeto de um Portal Responsivo com WordPress - 10° FGSL
Desenvolvendo Um Projeto de um Portal Responsivo com WordPress - 10° FGSLDesenvolvendo Um Projeto de um Portal Responsivo com WordPress - 10° FGSL
Desenvolvendo Um Projeto de um Portal Responsivo com WordPress - 10° FGSL
 
Codando com PHP e JQuery
Codando com PHP e JQueryCodando com PHP e JQuery
Codando com PHP e JQuery
 
Quebrando Paradigmas e Conhecendo o Movimento Software Livre
Quebrando Paradigmas e Conhecendo o Movimento Software LivreQuebrando Paradigmas e Conhecendo o Movimento Software Livre
Quebrando Paradigmas e Conhecendo o Movimento Software Livre
 
Discutindo Governança e Gestão de Projetos com Ferramentas Livres
Discutindo Governança e Gestão de Projetos com Ferramentas LivresDiscutindo Governança e Gestão de Projetos com Ferramentas Livres
Discutindo Governança e Gestão de Projetos com Ferramentas Livres
 
Desenvolvendo Um Projeto de Um Portal Responsivo Com WordPress
Desenvolvendo Um Projeto de Um Portal Responsivo Com WordPressDesenvolvendo Um Projeto de Um Portal Responsivo Com WordPress
Desenvolvendo Um Projeto de Um Portal Responsivo Com WordPress
 
Oficina de PHP - Software Freedom Day Luziânia 2013
Oficina de PHP - Software Freedom Day Luziânia 2013Oficina de PHP - Software Freedom Day Luziânia 2013
Oficina de PHP - Software Freedom Day Luziânia 2013
 
Free Software in the Cloud - Deixe as Nuvens facilitar a sua vida com Softwar...
Free Software in the Cloud - Deixe as Nuvens facilitar a sua vida com Softwar...Free Software in the Cloud - Deixe as Nuvens facilitar a sua vida com Softwar...
Free Software in the Cloud - Deixe as Nuvens facilitar a sua vida com Softwar...
 
Palestra Batismo Digital como uma Ferramenta Social no Ensino de Software Liv...
Palestra Batismo Digital como uma Ferramenta Social no Ensino de Software Liv...Palestra Batismo Digital como uma Ferramenta Social no Ensino de Software Liv...
Palestra Batismo Digital como uma Ferramenta Social no Ensino de Software Liv...
 
FGSL - Batismo Digital
FGSL - Batismo DigitalFGSL - Batismo Digital
FGSL - Batismo Digital
 
Evangelismo e Missões - Elucidando o papel do cristão e da Igreja
Evangelismo e Missões - Elucidando o papel do cristão e da IgrejaEvangelismo e Missões - Elucidando o papel do cristão e da Igreja
Evangelismo e Missões - Elucidando o papel do cristão e da Igreja
 
Curriculum - George Mendonça
Curriculum - George MendonçaCurriculum - George Mendonça
Curriculum - George Mendonça
 

Recently uploaded

ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxOsnilReis1
 
Simulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfSimulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfEditoraEnovus
 
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxSlides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxLuizHenriquedeAlmeid6
 
02. Informática - Windows 10 apostila completa.pdf
02. Informática - Windows 10 apostila completa.pdf02. Informática - Windows 10 apostila completa.pdf
02. Informática - Windows 10 apostila completa.pdfJorge Andrade
 
Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.keislayyovera123
 
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxAD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxkarinedarozabatista
 
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxLuizHenriquedeAlmeid6
 
UFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdfUFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdfManuais Formação
 
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologiaAula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologiaaulasgege
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxleandropereira983288
 
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃOLEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃOColégio Santa Teresinha
 
E agora?! Já não avalio as atitudes e valores?
E agora?! Já não avalio as atitudes e valores?E agora?! Já não avalio as atitudes e valores?
E agora?! Já não avalio as atitudes e valores?Rosalina Simão Nunes
 
ALMANANHE DE BRINCADEIRAS - 500 atividades escolares
ALMANANHE DE BRINCADEIRAS - 500 atividades escolaresALMANANHE DE BRINCADEIRAS - 500 atividades escolares
ALMANANHE DE BRINCADEIRAS - 500 atividades escolaresLilianPiola
 
A Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesA Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesMary Alvarenga
 
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
activIDADES CUENTO  lobo esta  CUENTO CUARTO GRADOactivIDADES CUENTO  lobo esta  CUENTO CUARTO GRADO
activIDADES CUENTO lobo esta CUENTO CUARTO GRADOcarolinacespedes23
 
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasCenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasRosalina Simão Nunes
 
Habilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasHabilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasCassio Meira Jr.
 
Prova uniasselvi tecnologias da Informação.pdf
Prova uniasselvi tecnologias da Informação.pdfProva uniasselvi tecnologias da Informação.pdf
Prova uniasselvi tecnologias da Informação.pdfArthurRomanof1
 

Recently uploaded (20)

ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
 
Em tempo de Quaresma .
Em tempo de Quaresma                            .Em tempo de Quaresma                            .
Em tempo de Quaresma .
 
Simulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfSimulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdf
 
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxSlides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
 
02. Informática - Windows 10 apostila completa.pdf
02. Informática - Windows 10 apostila completa.pdf02. Informática - Windows 10 apostila completa.pdf
02. Informática - Windows 10 apostila completa.pdf
 
Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.
 
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxAD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
 
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
 
UFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdfUFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdf
 
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologiaAula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptx
 
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃOLEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
 
E agora?! Já não avalio as atitudes e valores?
E agora?! Já não avalio as atitudes e valores?E agora?! Já não avalio as atitudes e valores?
E agora?! Já não avalio as atitudes e valores?
 
ALMANANHE DE BRINCADEIRAS - 500 atividades escolares
ALMANANHE DE BRINCADEIRAS - 500 atividades escolaresALMANANHE DE BRINCADEIRAS - 500 atividades escolares
ALMANANHE DE BRINCADEIRAS - 500 atividades escolares
 
A Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesA Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das Mães
 
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
activIDADES CUENTO  lobo esta  CUENTO CUARTO GRADOactivIDADES CUENTO  lobo esta  CUENTO CUARTO GRADO
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
 
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasCenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
 
Habilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasHabilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e Específicas
 
Orientação Técnico-Pedagógica EMBcae Nº 001, de 16 de abril de 2024
Orientação Técnico-Pedagógica EMBcae Nº 001, de 16 de abril de 2024Orientação Técnico-Pedagógica EMBcae Nº 001, de 16 de abril de 2024
Orientação Técnico-Pedagógica EMBcae Nº 001, de 16 de abril de 2024
 
Prova uniasselvi tecnologias da Informação.pdf
Prova uniasselvi tecnologias da Informação.pdfProva uniasselvi tecnologias da Informação.pdf
Prova uniasselvi tecnologias da Informação.pdf
 

PHP 5.3 - Arrays

  • 1. Bacharel em Ciência da Computação (UFG) Especializando em Engenharia de Software Analista de Sistemas – SIGMA / MDIC Professor Formador EAD – NEAD/ETEB george@georgemendonca.com.br http://www.georgemendonca.com.br Array
  • 2. • 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
  • 3. • 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
  • 4. • 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, , ... );
  • 5. • 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');
  • 6. • 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 )
  • 8. • 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); #
  • 9. • 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 )
  • 10. • 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º
  • 11. • 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º
  • 12. • 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 />"; #
  • 13. • 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 )
  • 14. • 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 )
  • 15. • 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 )
  • 16. • 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 )