ArrayIterator::next

(PHP 5, PHP 7, PHP 8)

ArrayIterator::nextПеремещает указатель за следующую запись

Описание

public ArrayIterator::next(): void

Перемещает указатель на следующую запись в массиве.

Список параметров

У этой функции нет параметров.

Возвращаемые значения

Функция не возвращает значения после выполнения.

Примеры

Пример #1 Пример использования ArrayIterator::next()

<?php
$arrayobject
= new ArrayObject();

$arrayobject[] = 'zero';
$arrayobject[] = 'one';

$iterator = $arrayobject->getIterator();

while(
$iterator->valid()) {
echo
$iterator->key() . ' => ' . $iterator->current() . "\n";

$iterator->next();
}
?>

Результат выполнения приведённого примера:

0 => zero
1 => one

add a note add a note

User Contributed Notes 1 note

up
1
onelsonsenna at gmail dot com
13 years ago
If you use exchangeArray method of ArrayObject and then next method of ArrayIterator like this:

<?php
   
    $fruits
= array("apple", "grape", "lemon");

   
$colors = array("blue", "yellow", "green");

   
$arrayObject = new ArrayObject($fruits);
   
   
$arrayIterator = $arrayObject->getIterator();

    while(
$arrayIterator->valid()) {

        if (
$arrayIterator->current() == "grape") {
           
$arrayObject->exchangeArray($colors);
        }

       
$arrayIterator->next();
    }

?>

You will receive:

PHP Notice:  ArrayIterator::next(): Array was modified outside object and internal position is no longer valid

So be careful with next and prev operations. :)
To Top