Programação WEB I
Aula 6
Arrays – Visão profunda sobre o assunto
ARRAYS
Programação WEB I
Array:
É um lugar identificado com um nome para armazenar um conjunto de valores
Arrays numericamente indexados;
Arrays associativos;
Arrays multidimensionais;
Classificando Arrays.
Programação WEB I
Arrays Numericamente Indexados
Trigo oleo Margarina
Programação WEB I
Arrays Numericamente Indexados
IMPRIMINDO ARRAYS
Para 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
Programação WEB I
Arrays Numericamente Indexados
Para substituir conteúdo dos elementos do array, atribui-se “=” .
[0]
[1]
[2]
$produto= Trigo Oleo Margarina
$produto[1] = Sal;
$produto[2] =oleo
[0]
[1]
[2]
Trigo sal
oleo
Programação WEB I
Arrays Numericamente Indexados
Podemos também criar um array da seguinte forma:
Trigo arroz sal
Loops para acessar o array:
Não precisa digitar todos os elementos conforme o exemplo anterior
Programação WEB I
Arrays Numericamente Indexados
Impressão com o laço de repetição foreach  Utilizado somente para trabalhar com
arrays(vetores)
Armazena cada elemento na variável
$array e o imprime.
Não precisa utilizar variável de incremento
Programação WEB I
Arrays 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:
[trigo] [oleo] [margarina]
1.90 1.45 2.9
9
Arrays Associativos
Programação WEB I
Modos de criar um array associativo
Ele cria um array com um elemento e depois
acrescenta os outros dois.
Arrays Associativos
Programação WEB I
IMPORTANTE: Usando Loops
Como os índices desse array não são números, não podemos utilizar um contador
simples em um loop for para trabalhar com array.
Arrays Associativos
Programação WEB I
Utilizando loops com each( ) e list( )
Como os índices nesse array associativo não são números, não podemos utilizar um
contador simples em um loop for para trabalhar com a matriz.
Retorna o elemento atual em um
Array e atualiza o próximo elemento .
Arrays Associativos
Programação WEB I
Utilizando loops com each( ) e list( )
A função list( ) pode ser utilizada para dividir um array em vários valores.
Programação WEB I
Criando 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.
Programação WEB I
Arrays Multidimensionais
produto
Cada localização no array pode armazenar outro array. Cria-se com isso um array
bidimensional;
Codigo
Descrição
Preço
TRI
Trigo
100
Ol
Oleo
20
MAR
Margarina
30
Atributo do produto
Programação
WEB
I
Arrays Multidimensionais
[0]
[1]
[2]
produto
[0]
[1]
[2]
Codigo
Descrição
Preço
TRI
Trigo
100
Ol
Oleo
20
MAR
Margarina
30
Atributo do produto
Programação WEB I
Arrays Multidimensionais
Exibindo
Exibindo com for
Programação WEB I
Arrays Multidimensionais
Programação WEB I
Modo associativo para array multidimensionais
Programação WEB I
Modo associativo para array multidimensionais
Exibindo
Programação WEB I
Programação WEB I
Imprimindo com Var_dump e print_r
Programação WEB I
Array 3D
Codigo
produtos
TRI
Codigo
Descrição
Preço
Trigo
Descrição
100
Preço
TRI Ol
Codigo
Oleo
Trigo
Descrição
20
Preço100
Ol MAR
CARRO_FR
Margarina
30
FreiosOleo
100 20
MAR
CARRO_Ol
Óleo Margarina
20
CARRO_AMO
Amortecedores
30
Atributos do produtos
30
Programação WEB I
Programação WEB I
Exibir
Os índices desse array são apenas numéricos, então utilizaremos loops for
Classificando Array
sort
Programação WEB I
rsort
Alfabético
asort
arsort
Ordena o array de acordo com
o valor de cada elemento.
ksort
krsort
Classifica por descrição.
Suffle()
reordena aleatoriamente
os elementos de um array( ).
Programação WEB I
Classificando Array- SORT
Programação WEB I
Classificando Array- ASORT
Programação WEB I
Classificando Array- KSORT
Programação WEB I
Classificando 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)
2 parâmetros
Nome da minha função
{
if ($x[1]==$y[1])
2 dos arrays dentro do array
return 0;
Principal representando dois produtos
else if ($x[1]<$y[1])
return -1;
else
return 1;
}
usort ($produto, ’compare’ );
Programação WEB I
Programação WEB I
Exercício
Crie a seguinte tabela. Exibe na tela todas as informações contidas nela
Coloque-a em ordem crescente pelo código
CODIG
O
PRODUTO
DESCRIÇÃO
PREÇO
0001
Óleo
Óleo para motor Rocan
30
2003
Freios
Freios ABS
400
3001
Amortecedores
Amortecedores Dianteiros
300
0020
Lanterna
Lanterna traseira Fumê
30
5001
Parabrisas
Cristal
40
4001
Rodas
Aro 17
4000
Download

Programação WEB I