Iterator::key

(PHP 5, PHP 7, PHP 8)

Iterator::keyВозвращает ключ текущего элемента

Описание

public Iterator::key(): mixed

Возвращает ключ текущего элемента.

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

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

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

Возвращает скалярное значение (scalar) в случае успешного выполнения или null в случае возникновения ошибки.

Ошибки

Создаёт ошибку уровня E_NOTICE в случае возникновения ошибки.

add a note add a note

User Contributed Notes 3 notes

up
10
michaelgranados at gmail dot com
11 years ago
Since PHP 5.5.X foreach can accept non scalar items. So the return can be anything ;)
up
-2
Lszl Lajos Jnszky
12 years ago
And converts everything to integer except string, so in php the post process could be:

    public function key() {
        $yourKey = $this->createYourKey();
        if (is_object($yourKey) || is_array($yourKey))
            throw new Exception('Array and Object not allowed.');
        elseif (is_string($yourKey))
            return $yourKey;
        else
            return (int) $yourKey;
    }
up
-2
sofe2038 at gmail dot com
4 years ago
This function may return any type, not just scalar, for some Iterator types. In particular, it is very trivial to write a generator function that yields arbitrary keys:

<?php
function foo() {
 
yield null => 1;
 
yield new stdclass => 2;
}
?>
To Top