Object Iteration
Оновлено: 11.05.2023
PHP надає можливість визначати об'єкти таким чином, щоб можна було ітераційно перебирати список елементів, наприклад, за допомогою оператора foreach. За замовчуванням, всі видимі властивості будуть використані для ітерації.
Приклад #1 Проста ітерація об'єктів
<?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();
?>
Як показано на виході, foreach перебрав усі видимі властивості, до яких можна було отримати доступ.
Генератори Ітератор IteratorAggregate SPL-ітератори