函数名:NoRewindIterator::key()
适用版本:PHP 5 >= 5.1.0, PHP 7
函数描述: NoRewindIterator::key() 函数用于返回当前元素的键名。
语法: public NoRewindIterator::key ( void ) : mixed
参数: 该函数没有参数。
返回值: 返回当前元素的键名。如果没有更多元素可用,则返回 NULL。
示例:
$array = array('a' => 'apple', 'b' => 'banana', 'c' => 'cherry');
$iterator = new NoRewindIterator(new ArrayIterator($array));
echo $iterator->key(); // 输出: a
$iterator->next();
echo $iterator->key(); // 输出: b
$iterator->next();
echo $iterator->key(); // 输出: c
$iterator->next();
echo $iterator->key(); // 输出: NULL
在上面的示例中,我们首先创建了一个包含三个元素的关联数组。然后我们将该数组传递给 ArrayIterator 类来创建一个迭代器对象。接下来,我们将该迭代器对象传递给 NoRewindIterator 类来创建一个不可倒回的迭代器对象。
我们通过调用 $iterator->key() 来获取当前元素的键名。在每次调用 $iterator->next() 后,当前元素都会向下移动一个位置,并且 $iterator->key() 会返回相应的键名。当没有更多元素可用时,$iterator->key() 将返回 NULL。
请注意,NoRewindIterator 类是一个装饰器类,它将包装在其内部的迭代器对象,并提供了一些额外的功能。在这个示例中,我们使用 NoRewindIterator 类来确保迭代器不能倒回,即使我们调用了 $iterator->rewind() 方法也不会改变当前元素的位置。