Iteração de Objetos

O PHP fornece uma maneira de definir objetos para que seja possível iterar por uma lista de itens, como, por exemplo, a instrução foreach. Por padrão, todas as propriedades visíveis serão utilizadas para a iteração.

Exemplo #1 Iteração simples de objetos

<?php
class MyClass
{
public
$var1 = 'value 1';
public
$var2 = 'value 2';
public
$var3 = 'value 3';

protected
$protected = 'protected var';
private
$private = 'private var';

function
iterateVisible() {
echo
"MyClass::iterateVisible:\n";
foreach (
$this as $key => $value) {
print
"$key => $value\n";
}
}
}

$class = new MyClass();

foreach(
$class as $key => $value) {
print
"$key => $value\n";
}
echo
"\n";


$class->iterateVisible();

?>

O exemplo acima produzirá:

 var1 => value 1 var2 => value 2 var3 => value 3 MyClass::iterateVisible: var1 => value 1 var2 => value 2 var3 => value 3 protected => protected var private => private var 

Como a saída mostra, o foreach passou por cada uma das variáveis visíveis que podem ser acessadas.

To Top