Desenvolvimento Web I                Aula 04Instrutor: José Fernando Santana Andrade      fernando.amdrade@gmail.com
Estruturas de dados                compostas17/12/12             Desenvolvimento Web I   2/46
Estruturas de dados                compostas    Problema: faça um script que calcule a    média ponderada de 300 alunos e ...
Estruturas de dados                compostas    Problema: faça um script que calcule a    média ponderada de 300 alunos e ...
Estruturas de dados                compostas●   Aplicações que necessitam de muitas    variáveis●   Ajudam a organizar o c...
Estruturas de dados                compostas            Homogênea                    Heterogênea17/12/12                De...
Vetor●   Estrutura composta unidimensional●   Estrutura homogênea●   Faz uso de uma variável indexada●   Cada posição posi...
Vetor17/12/12      Desenvolvimento Web I   8/46
Vetor●   Para acessar usamos o identificador da    variável seguido do índice do qual    queremos o valor17/12/12         ...
Exemplo           itens                 0       1          2                3        4               caixa   sapato     ca...
Matriz●   Estrutura composta multidimensional●   Problemas que precisam de mais de uma    dimensão em uma estrutura●   As ...
Matriz           1,1    1,2          …            1,n           2,1    2,2          …            2,n           …      …   ...
Exemplo  itens                     1,1              1,2                   sapato           camisa                    2,1  ...
Tipo array●   É uma lista de valores armazenados na    memória, os quais podem ser de tipos    diferentes●   Cada valor é ...
Criando um array                array([chave =>] valor, … )           $cores = array(vermelho,verde,azul);           ou$co...
Exemplo           $nomes = array(maria,joão,carlos);           $nomes[] = josé;           var_dump($nomes);           echo...
Registro●   Além dos índices do tipo inteiro, índices    literais também são suportados17/12/12             Desenvolviment...
Exemplo$pessoa[nome] = Maria da Silva;$pessoa[rua] = São João;$pessoa[bairro] = Cidade Alta;$pessoa[cidade] = Porto Alegre...
foreach●   É um laço de repetição para iterações em    arrays ou matrizes●   FOR simplificado que decompõe um vetor    ou ...
foreach           foreach(expressão_array as $valor)           {              instruções           }17/12/12              ...
Exemplo       $cores = array(vermelho,verde,azul);       foreach($nomes as $valor)       {          echo "$valor <br />"; ...
Iterações    $nomes = array(maria,joão,carlos,josé);    for($i=0;$i<4;$i++)    {       echo "$nomes[$i] <br />";    }    f...
Array multidimensionais●   Ou matrizes são array nos quais algumas    de suas posições podem conter outros    arrays17/12/...
Exemplo$carros = array(   Palio=>array(      cor=>preto,      potencia=>1.0,      opcionais=>Ar Cond.),   Corsa=>array(   ...
Exemploforeach($carros as $modelo=>$caracteristicas){   echo "=> modelo $modelo <br />";   foreach($caracteristicas as $ca...
Exercício    Modele e inicialize um registro que    contenha os seguintes dados nome,    matricula e curso. Imprima seu re...
Exercício $cad = array(   Nome=>James Ross,   Matricula=>681324,   Curso=>"Redes de Computadores"); foreach($cad as $aux=>...
Exercício                               x x oFaça uma representaçãopara o joga da velha                               o x ...
Exercício       $velha=array(          array(X,X,O),          array(O,X,O),          array(X,O,X));       foreach($velha a...
Exercício    Faça um script para inverter um array17/12/12            Desenvolvimento Web I   30/46
Exercício           $a=array(1,2,3,4,5,6,7,8,9);           print_r($a);           echo <br />;           //retorna o taman...
Exercício    Faça um script para ordenar um array:    $valor = array(34,2,0,47,1);    0 1 2 34 4717/12/12             Dese...
Manipulação de arrays17/12/12        Desenvolvimento Web I   33/46
array_push●   Adiciona elementos ao final do array  $a = array(verde,azul,branco);  array_push($a,amarelo);  print_r($a);1...
array_pop●   Remove um valor do final de um array  $a = array(verde,azul,branco,amarelo);  array_pop($a);  print_r($a);17/...
array_shift●   Remove um elemento do início do array  $a = array(verde,azul,branco,amarelo);  array_shift($a);  print_r($a...
array_unshift●   Adiciona um elemento do início do array  $a = array(verde,azul,branco);  array_unshift($a,amarelo);  prin...
array_reverse●  Recebe um array e retorna-o na ordem   inversa  $a = array(verde,azul,branco);  $b = array_reverse($a,fals...
array_merge●  Mesca dois ou mais arrays. Um é   adicionado ao final do outro  $a = array(azul,branco);  $b = array(verde,v...
array_slice●   Extrai uma porção do array$a = array(azul,branco,verde,vermelho,cinza);$b = array_slice($a,1,3);print_r($b)...
in_array●   Verifica se um array contém um    determinado valor$a = array(azul,branco,verde,vermelho,cinza);if(in_array(ve...
count●   Retorna a quantidade de elementos de um    array$a = array(azul,branco,verde,vermelho,cinza);echo o array $a cont...
sort●   Ordena um array pelo seu valor$a = array(azul,branco,verde,vermelho,cinza);sort($a);print_r($a);17/12/12          ...
explode●   Converte uma string em um array, separando    os elementos por meio de um separador$string = "pé/meia/sapato";$...
implode●   Converte um array em uma string, separando    os elementos por meio de um separador$nome = array(pé,meia,sapato...
Obrigado !17/12/12        Desenvolvimento Web I   46/46
Próximos SlideShares
Carregando em…5
×

Php04

211 visualizações

Publicada em

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
211
No SlideShare
0
A partir de incorporações
0
Número de incorporações
3
Ações
Compartilhamentos
0
Downloads
3
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Php04

  1. 1. Desenvolvimento Web I Aula 04Instrutor: José Fernando Santana Andrade fernando.amdrade@gmail.com
  2. 2. Estruturas de dados compostas17/12/12 Desenvolvimento Web I 2/46
  3. 3. Estruturas de dados compostas Problema: faça um script que calcule a média ponderada de 300 alunos e imprimar o total de aprovados, reprovados, maior e menor nota.17/12/12 Desenvolvimento Web I 3/46
  4. 4. Estruturas de dados compostas Problema: faça um script que calcule a média ponderada de 300 alunos e imprimar o total de aprovados, reprovados, maior e menor nota. De quantas variáveis precisamos ?17/12/12 Desenvolvimento Web I 4/46
  5. 5. Estruturas de dados compostas● Aplicações que necessitam de muitas variáveis● Ajudam a organizar o código17/12/12 Desenvolvimento Web I 5/46
  6. 6. Estruturas de dados compostas Homogênea Heterogênea17/12/12 Desenvolvimento Web I 6/46
  7. 7. Vetor● Estrutura composta unidimensional● Estrutura homogênea● Faz uso de uma variável indexada● Cada posição posição da variável é chamada de índice17/12/12 Desenvolvimento Web I 7/46
  8. 8. Vetor17/12/12 Desenvolvimento Web I 8/46
  9. 9. Vetor● Para acessar usamos o identificador da variável seguido do índice do qual queremos o valor17/12/12 Desenvolvimento Web I 9/46
  10. 10. Exemplo itens 0 1 2 3 4 caixa sapato camisa meia gravata itens[1] → sapato itens[3] → meia17/12/12 Desenvolvimento Web I 10/46
  11. 11. Matriz● Estrutura composta multidimensional● Problemas que precisam de mais de uma dimensão em uma estrutura● As posições têm um índice para cada dimensão17/12/12 Desenvolvimento Web I 11/46
  12. 12. Matriz 1,1 1,2 … 1,n 2,1 2,2 … 2,n … … … … m,1 m,2 … m,n17/12/12 Desenvolvimento Web I 12/46
  13. 13. Exemplo itens 1,1 1,2 sapato camisa 2,1 2,2 meia caixa itens[1][1] → sapato itens[2][1] → meia17/12/12 Desenvolvimento Web I 13/46
  14. 14. Tipo array● É uma lista de valores armazenados na memória, os quais podem ser de tipos diferentes● Cada valor é relacionado a uma chave17/12/12 Desenvolvimento Web I 14/46
  15. 15. Criando um array array([chave =>] valor, … ) $cores = array(vermelho,verde,azul); ou$cores = array(0=>vermelho,1=>verde,2=>azul); ou$cores[] = vermelho;$cores[] = verde;$cores[] = azul;17/12/12 Desenvolvimento Web I 15/46
  16. 16. Exemplo $nomes = array(maria,joão,carlos); $nomes[] = josé; var_dump($nomes); echo <br />; print_r($nomes); echo <br />; echo $nomes[0].<br />; echo $nomes[1].<br />; echo $nomes[2].<br />; echo $nomes[3].<br />;17/12/12 Desenvolvimento Web I 16/46
  17. 17. Registro● Além dos índices do tipo inteiro, índices literais também são suportados17/12/12 Desenvolvimento Web I 17/46
  18. 18. Exemplo$pessoa[nome] = Maria da Silva;$pessoa[rua] = São João;$pessoa[bairro] = Cidade Alta;$pessoa[cidade] = Porto Alegre;//para acessar basta indicar a chaveecho $pessoa[nome];echo $pessoa[rua];echo $pessoa[bairro];echo $pessoa[cidade];17/12/12 Desenvolvimento Web I 18/46
  19. 19. foreach● É um laço de repetição para iterações em arrays ou matrizes● FOR simplificado que decompõe um vetor ou matriz em cada um de seus elementos por meio da cláusula AS17/12/12 Desenvolvimento Web I 19/46
  20. 20. foreach foreach(expressão_array as $valor) { instruções }17/12/12 Desenvolvimento Web I 20/46
  21. 21. Exemplo $cores = array(vermelho,verde,azul); foreach($nomes as $valor) { echo "$valor <br />"; }17/12/12 Desenvolvimento Web I 21/46
  22. 22. Iterações $nomes = array(maria,joão,carlos,josé); for($i=0;$i<4;$i++) { echo "$nomes[$i] <br />"; } foreach($nomes as $valor) FOR X FOREACH { echo "$valor <br />"; ? }17/12/12 Desenvolvimento Web I 22/46
  23. 23. Array multidimensionais● Ou matrizes são array nos quais algumas de suas posições podem conter outros arrays17/12/12 Desenvolvimento Web I 23/46
  24. 24. Exemplo$carros = array( Palio=>array( cor=>preto, potencia=>1.0, opcionais=>Ar Cond.), Corsa=>array( cor=>branco, potencia=>1.3, opcionais=>MP3), Gol=>array( cor=>cinza, potencia=>1.0, opcionais=>DVD));echo $carros[Corsa][potencia];17/12/12 Desenvolvimento Web I 24/46
  25. 25. Exemploforeach($carros as $modelo=>$caracteristicas){ echo "=> modelo $modelo <br />"; foreach($caracteristicas as $caracteristica=>$valor) { echo "caracteristica $caracteristica => $valor <br />n"; }}17/12/12 Desenvolvimento Web I 25/46
  26. 26. Exercício Modele e inicialize um registro que contenha os seguintes dados nome, matricula e curso. Imprima seu registro. Ex.: Nome => James Ross Matricula => 681324 Curso => Redes de Computadores17/12/12 Desenvolvimento Web I 26/46
  27. 27. Exercício $cad = array( Nome=>James Ross, Matricula=>681324, Curso=>"Redes de Computadores"); foreach($cad as $aux=>$valor) { echo "$aux => $valor <br />"; }17/12/12 Desenvolvimento Web I 27/46
  28. 28. Exercício x x oFaça uma representaçãopara o joga da velha o x o x o x17/12/12 Desenvolvimento Web I 28/46
  29. 29. Exercício $velha=array( array(X,X,O), array(O,X,O), array(X,O,X)); foreach($velha as $linha) { foreach($linha as $valor) { echo "$valor "; } echo "<br />"; }17/12/12 Desenvolvimento Web I 29/46
  30. 30. Exercício Faça um script para inverter um array17/12/12 Desenvolvimento Web I 30/46
  31. 31. Exercício $a=array(1,2,3,4,5,6,7,8,9); print_r($a); echo <br />; //retorna o tamanho do array $t = sizeof($a); /*como invertemos os extremos só precisamos fazer a metade do número de elementos*/ for($i=0;$i<$t/2;$i++){ $aux = $a[$i]; $a[$i] = $a[($t-1)-$i]; $a[($t-1)-$i] = $aux; } print_r($a);17/12/12 Desenvolvimento Web I 31/46
  32. 32. Exercício Faça um script para ordenar um array: $valor = array(34,2,0,47,1); 0 1 2 34 4717/12/12 Desenvolvimento Web I 32/46
  33. 33. Manipulação de arrays17/12/12 Desenvolvimento Web I 33/46
  34. 34. array_push● Adiciona elementos ao final do array $a = array(verde,azul,branco); array_push($a,amarelo); print_r($a);17/12/12 Desenvolvimento Web I 34/46
  35. 35. array_pop● Remove um valor do final de um array $a = array(verde,azul,branco,amarelo); array_pop($a); print_r($a);17/12/12 Desenvolvimento Web I 35/46
  36. 36. array_shift● Remove um elemento do início do array $a = array(verde,azul,branco,amarelo); array_shift($a); print_r($a);17/12/12 Desenvolvimento Web I 36/46
  37. 37. array_unshift● Adiciona um elemento do início do array $a = array(verde,azul,branco); array_unshift($a,amarelo); print_r($a);17/12/12 Desenvolvimento Web I 37/46
  38. 38. array_reverse● Recebe um array e retorna-o na ordem inversa $a = array(verde,azul,branco); $b = array_reverse($a,false); $c = array_reverse($a,true); print_r($b); print_r($c); Com TRUE as chaves são preservadas17/12/12 Desenvolvimento Web I 38/46
  39. 39. array_merge● Mesca dois ou mais arrays. Um é adicionado ao final do outro $a = array(azul,branco); $b = array(verde,vermelho); $c = array_merge($a,$b); print_r($c);17/12/12 Desenvolvimento Web I 39/46
  40. 40. array_slice● Extrai uma porção do array$a = array(azul,branco,verde,vermelho,cinza);$b = array_slice($a,1,3);print_r($b);17/12/12 Desenvolvimento Web I 40/46
  41. 41. in_array● Verifica se um array contém um determinado valor$a = array(azul,branco,verde,vermelho,cinza);if(in_array(verde,$a)){ echo “valor encontrado”;}17/12/12 Desenvolvimento Web I 41/46
  42. 42. count● Retorna a quantidade de elementos de um array$a = array(azul,branco,verde,vermelho,cinza);echo o array $a contém .count($a). posições;17/12/12 Desenvolvimento Web I 42/46
  43. 43. sort● Ordena um array pelo seu valor$a = array(azul,branco,verde,vermelho,cinza);sort($a);print_r($a);17/12/12 Desenvolvimento Web I 43/46
  44. 44. explode● Converte uma string em um array, separando os elementos por meio de um separador$string = "pé/meia/sapato";$resultado = explode("/",$string);print_r($resultado);17/12/12 Desenvolvimento Web I 44/46
  45. 45. implode● Converte um array em uma string, separando os elementos por meio de um separador$nome = array(pé,meia,sapato);$resultado = implode("+",$nome);print_r($resultado);17/12/12 Desenvolvimento Web I 45/46
  46. 46. Obrigado !17/12/12 Desenvolvimento Web I 46/46

×