ilustrar
Primeiro, foreach é uma ferramenta que passa objetos e pode ser usada sozinha ou em conjunto com iteradores e geradores.
2. Se foreach for definido como uma classe, todos os atributos poderão ser gerados. Se for chamado como uma função fora da categoria, apenas atributos públicos poderão ser gerados.
Exemplo
classeMinhaClasse { público $var1 = 'valor 1'; protegido $protegido = 'var protegido'; privado $privado = 'var privado'; função iterarVisível() { foreach($this as $key => $value) { //Dentro da classe, foreach é definido no método membro; imprimir "$chave => $valorn"; } } } $class = new MinhaClasse(); foreach($class as $key => $value) { //Lê o objeto como uma função externa print "$key => $valuen"; } //var1 => valor 1, gera apenas propriedades públicas $class->iterateVisible() //var1 => valor 1, protected => protected var, private => private var gera todas as propriedades do objeto;
O texto acima é o uso de foreach em php, espero que seja útil para todos.