函数名:RecursiveTreeIterator::rewind()
适用版本:PHP 5 >= 5.3.0, PHP 7
函数描述:该函数用于将迭代器重置到起始位置。
用法:
void RecursiveTreeIterator::rewind ( void )
参数:该函数没有参数。
返回值:该函数没有返回值。
示例:
// 创建一个多维数组
$data = [
'A' => [
'B' => [
'C' => 'Value 1',
'D' => 'Value 2'
],
'E' => 'Value 3'
],
'F' => 'Value 4'
];
// 创建一个递归树迭代器
$iterator = new RecursiveTreeIterator(new RecursiveArrayIterator($data));
// 遍历迭代器并输出每个元素
foreach ($iterator as $key => $value) {
echo $key . ': ' . $value . "\n";
}
// 重置迭代器到起始位置
$iterator->rewind();
// 输出起始位置的元素
echo 'Rewinded: ' . $iterator->key() . ': ' . $iterator->current();
输出:
A:
├─ B:
│ ├─ C: Value 1
│ └─ D: Value 2
└─ E: Value 3
F: Value 4
Rewinded: A:
在上面的示例中,我们首先创建了一个多维数组$data,并使用RecursiveArrayIterator将其转换为可迭代对象。然后,我们创建了一个RecursiveTreeIterator来遍历多维数组的所有元素,并使用foreach循环输出每个元素。
接着,我们使用rewind()函数将迭代器重置到起始位置,并使用key()和current()函数分别获取当前元素的键和值,并输出到屏幕上。输出结果显示,迭代器已经回到了起始位置,当前元素是'A'。