Este documento discute operações com arrays em PHP, incluindo movimentação do ponteiro através de funções como next(), current() e end(); passagem de valores e chaves de arrays para funções; e determinação do tamanho e frequência de elementos em um array usando funções como count(), sizeof() e array_count_values(). Também cobre ciclos para listar elementos de arrays e funções de depuração como print_r() e var_dump().
2. Arrays: movimentação de ponteiro
Mover o ponteiro
• sendo $fruta um array
• next($fruta) -> move ponteiro para a posição seguinte
• prev($fruta) -> move ponteiro para a posição anterior
• $fruta = array(“maçã", “laranja", "banana“, “morango”);
• $frutas = next($fruta); // $frutas = “laranja"
• $frutas = next($fruta); // $frutas = "banana“
• $frutas = prev($fruta); // $frutas = “laranja"
“maçã” “laranja” “banana” “morango”
3. Arrays: movimentação de ponteiro
Mover o ponteiro
• reset($fruta) -> move o ponteiro para a posição inicial do array
• current($fruta) -> valor na posição actual do ponteiro
• end($fruta) -> move ponteiro para a posição final do array
• $fruta = array(“maçã", “laranja", "banana“,
“morango”);
• $frutas = current($fruits); // “maçã"
• $frutas = end($fruits); // “morango“
• $frutas = reset($fruits); // “maçã"
“maçã” “laranja” “banana” “morango”
4. Passagem dos valores e chaves de um array
Passagem de valores de um array para uma função definida pelo utilizador
-> array_walk()
• A função definida terá dois parâmetros de entrada
• o valor armazenado numa dada posição
• a chave correspondente
• function mostra_array($valor, $chave) {
echo "A chave do $valor é igual a: $chave.<br />";
}
$a = array("SCP"=>"Sporting","FCP"=>"Porto","SCB"=>
"Braga");
array_walk($a,"mostra_array");
5. Tamanho e frequência de um array
Determinar o tamanho de um Array -> count() ou sizeof()
• $garden = array("cabbage", "peppers", "turnips",
"carrots");
echo count($garden); // 4
• em alternativa poder-se-á utilizar a função -> sizeof($garden)
Determinar a frequência dos valores de um Array -> array_count_values()
• $states = array("Ohio","Iowa","Arizona","Iowa","Ohio");
$stateFrequency = array_count_values($states);
print_r($stateFrequency);
6. Ciclos com arrays
Listar todos os elementos de um array através de um ciclo?
• $numeros = array(0,1,2,3,4,5,6,6,7,7,8,9,9,9,9,10);
• foreach ($numeros as $num) {
echo $num." | ";
}
• for ($i = 0; $i < sizeof($numeros); $i++) {
echo $numeros[$i]." | ";
}
7. Debug de arrays
Funções muito úteis durante a fase de desenvolvimento!
• $lista = array(100, ”Aveiro”, 22.1);
print_r($lista);
// Array ( [0] => 100 [1] => Aveiro [2] => 22.1 )
var_dump($lista);
// array(3) {
[0]=> int(100)
[1]=> string(6) "Aveiro"
[2]=> float(22.1)
}