PHP标准库(SPL)学习之ArrayIterator

发布于 2017-03-10 00:56:28 阅读 325

这个ArrayIterator迭代器会把对象或数组封装为一个可以通过foreach来操作的类.

这个迭代器允许在遍历数组和对象时删除和更新值与键
当你想多次遍历相同数组时你需要实例化ArrayObject,然后让这个实例创建一个ArrayIteratror实例 当你想遍历相同数组时多次你需要实例ArrayObject并且让这个实例创建一个ArrayIteratror实例,然后使用foreach或者 手动调用getIterator()方法
--PHP手册

<?php
$array1 = new ArrayIterator(['aaaaa' => 1]);
$array2 = new ArrayIterator(['bbbbb' => 2]);

for ($array1->rewind(); $array1->valid(); $array1->next())
{
    echo 'key:'.$array1->key().' & value:'.$array1->current().PHP_EOL;
}

foreach ($array2 as $k => $v) {
    echo 'key2:'.$k.' & value2:'.$v.PHP_EOL;
}