programação web i aula 6 arrays – visão profunda sobre o assunto

31
Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Upload: luciana-azenha-caldas

Post on 07-Apr-2016

217 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB I

Aula 6Arrays – Visão profunda sobre o assunto

Page 2: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IArray:

É um lugar identificado com um nome para armazenar um conjunto de valores

Arrays numericamente indexados;Arrays associativos;Arrays multidimensionais;Classificando Arrays.

ARRAYS

Page 3: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IArrays Numericamente Indexados

Trigo oleo Margarina

Page 4: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IPara acessar o conteúdo de uma variável, utilize o nome dela. Se a variável for um array,acesse o conteúdo utilizando o nome e uma chave ou índice.

A chave ou índice indica quais valores armazenados acessamos.

índice

Trigo Oleo Margarina

Arrays Numericamente IndexadosIMPRIMINDO ARRAYS

Page 5: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IPara substituir conteúdo dos elementos do array, atribui-se “=” .

Trigo Oleo Margarina[0] [1] [2]

$produto[1] = Sal;$produto[2] =oleo

Trigo sal oleo[0] [1] [2]

$produto=

Arrays Numericamente Indexados

Page 6: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB I

Loops para acessar o array:

Podemos também criar um array da seguinte forma:

Não precisa digitar todos os elementos conforme o exemplo anterior

Trigo arroz sal

Arrays Numericamente Indexados

Page 7: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB I

Armazena cada elemento na variável$array e o imprime.

Arrays Numericamente Indexados

Impressão com o laço de repetição foreach Utilizado somente para trabalhar comarrays(vetores)

Não precisa utilizar variável de incremento

Page 8: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IArrays Associativos

No modo anterior apresentado, mostramos o índice padrão do PHP. Isso significa que o primeiro índice tornou-se 0.

No associativo, podemos associar qualquer chave ou índice que quisermos com cada valor.

Acessamos:

1.90

1.45

2.99

[trigo][oleo][margarina]

Page 9: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IModos de criar um array associativo

Ele cria um array com um elemento e depois acrescenta os outros dois.

Arrays Associativos

Page 10: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IIMPORTANTE: Usando Loops

Como os índices desse array não são números, não podemos utilizar um contadorsimples em um loop for para trabalhar com array.

Arrays Associativos

Page 11: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IUtilizando loops com each( ) e list( )

Como os índices nesse array associativo não são números, não podemos utilizar umcontador simples em um loop for para trabalhar com a matriz.

Retorna o elemento atual em umArray e atualiza o próximo elemento .

Arrays Associativos

Page 12: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB I

A função list( ) pode ser utilizada para dividir um array em vários valores.

Utilizando loops com each( ) e list( )Arrays Associativos

Page 13: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB ICriando 2 loops em um mesmo script

Isso acontece porque o cursor após a execução de um loop se encontra no fim do array.

Isso acontece porque o cursor após a execução de um loop se encontra no fim do array.

Page 14: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IArrays Multidimensionais

Cada localização no array pode armazenar outro array. Cria-se com isso um array bidimensional;

Codigo Descrição PreçoTRI Trigo 100Ol Oleo 20MAR Margarina 30

prod

uto

Atributo do produto

Page 15: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB I

Codigo Descrição PreçoTRI Trigo 100Ol Oleo 20MAR Margarina 30

prod

uto

Atributo do produto

[0] [1] [2]

[0][1][2]

Arrays Multidimensionais

Page 16: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IExibindo

Exibindo com for

Arrays Multidimensionais

Page 17: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IArrays Multidimensionais

Page 18: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IModo associativo para array multidimensionais

Page 19: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IExibindo

Modo associativo para array multidimensionais

Page 20: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB I

Page 21: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IImprimindo com Var_dump e print_r

Page 22: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB ICodigo Descrição Preço

TRI Trigo 100

Ol Oleo 20

MAR Margarina 30

Codigo Descrição Preço

TRI Trigo 100

Ol Oleo 20

MAR Margarina 30

Codigo Descrição Preço

CARRO_FR Freios 100

CARRO_Ol Óleo 20

CARRO_AMO Amortecedores 30

Categ

orias

do

produ

to

prod

utos

Atributos do produtos

Array 3D

Page 23: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB I

Page 24: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IExibir

Os índices desse array são apenas numéricos, então utilizaremos loops for

Page 25: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IClassificando Array

sort rsort

asort arsort

ksort krsort

Alfabético

Ordena o array de acordo com o valor de cada elemento.

Classifica por descrição.

Suffle()

reordena aleatoriamente os elementos de um array( ).

Page 26: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IClassificando Array- SORT

Page 27: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IClassificando Array- ASORT

Page 28: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IClassificando Array- KSORT

Page 29: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IClassificando Arrays Multidimensionais

$produto=array( array(‘TRI’, ‘trigo’,100),array(‘Ol’, ‘Oleo’,20),array(‘MAR’,’Margarina’,30));

Podemos classificar essa array em 2 formas: Alfabética ou por preço.Para isso precisamos utilizar a função usort() e depois comparar os itens.Precisamos então criar nossa própria função de comparação.

function compare($x,$y){if ($x[1]==$y[1])return 0; else if ($x[1]<$y[1])return -1;elsereturn 1;}usort ($produto, ’compare’ );

Nome da minha função2 parâmetros

2 dos arrays dentro do arrayPrincipal representando dois produtos

Page 30: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB I

Page 31: Programação WEB I Aula 6 Arrays – Visão profunda sobre o assunto

Programação WEB IExercício

CODIGO

PRODUTO DESCRIÇÃO PREÇO

0001 Óleo Óleo para motor Rocan 30

2003 Freios Freios ABS 4003001 Amortecedor

esAmortecedores Dianteiros

300

0020 Lanterna Lanterna traseira Fumê

30

5001 Parabrisas Cristal 404001 Rodas Aro 17 4000

Crie a seguinte tabela. Exibe na tela todas as informações contidas nelaColoque-a em ordem crescente pelo código