イテレータの現在位置を返す

# SplObjectStorage::key

(PHP 5 >= 5.1.0, PHP 7)

SplObjectStorage::key — イテレータの現在位置を返す

### 説明

public SplObjectStorage::key ( void ) : int

イテレータの現在位置を返します。

### パラメータ

この関数にはパラメータはありません。

### 返り値

イテレータの現在位置に対応するインデックスを返します。

### 例

例1 SplObjectStorage::key() の例

`<?php
$s = new SplObjectStorage();
$o1 = new StdClass;
$o2 = new StdClass;
$s->attach($o1, "d1");
$s->attach($o2, "d2");
$s->rewind();
while($s->valid()) {
$index = $s->key();
$object = $s->current(); // current($s) と同等
var_dump($index);
var_dump($object);
$s->next();
}
?>`

上の例の出力は、 たとえば以下のようになります。

    int(0)
    object(stdClass)#2 (0) {
    }
    int(1)
    object(stdClass)#3 (0) {
    }

### 参考

- SplObjectStorage::rewind() - イテレータをストレージの最初の要素に巻き戻す
- SplObjectStorage::current() - 現在のストレージの要素を返す
- SplObjectStorage::next() - 次のエントリに移動する
- SplObjectStorage::valid() - イテレータの現在のエントリが有効かどうかを返す