Objota O mundo orientado a objetos

Arrays e Matrizes em php

Posted on julho 17, 2010

Arrays em php

Olá, neste artigo vou falar um pouco sobre array em php. Como utilizá-lo, para que serve e etc. Mas.. o que é um array?

Array é uma coleção de valores armazenada em uma única variável. Até agora vimos que é possível armazenar valores numéricos e caracteres em uma variável. Utilizando um array, é possível armazenar vários tipos de valores em uma única variável. Veja um exemplo abaixo:


<?php

	//Uma variável comum

	$valor = 123;
	$valor = "Objota";

	//Um array

	$valor = array(123,"Objota");

?>

Para recuperar um valor específico do array é preciso fornecer um índice. Este índice geralmente é um valor numérico, porém em arrays associativos, também se usa caracteres. Vejamos o segundo exemplo:


<?php
	//Um array

	$valor = array(123,"Objota");

	//A linha abaixo imprime na tela o valor "123"

	echo $valor[0];

?>

Como pudemos ver no exemplo acima, o índice inicia sua contagem a partir do zero. Como temos dois elementos no array (123 e “Objota”) temos os índices 0 e 1 acessíveis.

Arrays Associativos

Em geral todo array é associativo. No exemplo anterior o índice zero está associado ao primeiro item do array. Por omissão o php considera que o índice é um número, porém é possível declarar como será este índice. Vejamos abaixo.


<?php
	//Sem declarar o nome da chave ou índice

	$valor = array(123,"Objota");

	//Por omissão é determinado um número como índice ou chave

	echo $valor[0];

	//Declarando o nome da chave

	$valor = array("primeiro" => 123, "segundo" => "Objota");

	//Imprime "123" na tela

	echo $valor["primeiro"];

?>

Matrizes com combinações de array

Na própria matemática e em muitos sistemas, e muitos tipos de cálculo é necessário o uso de matrizes. Uma matriz  é um conjunto de linhas e colunas. Vejamos um exemplo abaixo:


<?php
	//Eis um exemplo de um matriz 3x3 (três linhas por três colunas)

	$Matriz = array(array(59,56,47),
			     array(85,57,73),
			     array(15,23,32));

	// A linha abaixo imprime 23 na tela

	//veja a referência, terceira coluna e linha 2

	//Lembrando que a contagem do índice começa do zero!

	// Neste formato o primeiro colchete define a coluna
	// e o segundo colchete define a linha
	echo $Matriz[2][1];

?>

Da mesma forma também é possível fazer isso:

<?php

// Uma matriz associativa
$valor = array(
	'Cor'			=> array( 'Vermelho', 'Branco', 'Prata' ),
	'Capacidade'	=> array( '4GB', '8GB', '16GB' ),
	'Interface'		=> array( 'Windows', 'Mac', 'Linux' ),
);

// Esta linha printa 'Vermelho' na tela
echo $valor['Cor'][0];

//Coluna 'cor' e o ítem zero '0' desta coluna

?>

Bom este foi um tutorial simples e direto para esclarecer como utilizar um array. No próximo artigo faremos uma classe para manipular arrays. Com vários tipos de loop. Dúvidas, fiquem a vontade para postar.

Posted by Rodrigo Ireno

Comentários (11) Trackbacks (1)
  1. Simples e Direto !!!!
    Mais um artigo de grande valor !!!

  2. Ótimo artigo, me ajudou bastante. Você sabe fazer os melhores tutoriais simples e diretos, continue assim! E tb continue postando material sobre PHP, rs.
    Sucesso!

  3. Excelente.
    Parabéns!

  4. Muito útil! Muito obrigado, Rodrigo!

  5. Como faria se eu tivesse que atribuir os valore para a matriz em um laço, onde eu não sei quais, nem quantas vão ser as entradas? Eu tentei:
    for($i=0,$ j=0;$i<=255,$ j<=255;$i++,$j++)
    {
    $matriz[$i][$j]=$i+$j;
    }

    Mas não deu certo.

  6. Betina,
    quando não se sabe quantas entrada vão ter, use o while.
    mas o laço de matriz não vai rodar nunca assim.
    a maneira correta é:

    for($i = 0; $i < 10; $i++){
    for($j = 0; $j < 10; $j++){
    echo $i." ".$j;
    }
    }

  7. Como fazer para ler os indices de um array associativo que são strings? alguem sabe?

  8. Esse site e muito maneiro!!!

  9. Ótimo. Preciso bastante util

  10. $Matriz = array(array(59,56,47),
    array(85,57,73),
    array(15,23,32));

    // A linha abaixo imprime 23 na tela

    //veja a referência, terceira coluna e linha 2

    //Lembrando que a contagem do índice começa do zero!

    # Neste formato o primeiro colchete define a coluna
    # e o segundo colchete define a linha
    echo $Matriz[2][1];

    Não seria o primeiro colchete define a linha e o segundo a coluna!


Leave a comment