SplObjectStorage::current

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

SplObjectStorage::current現在のストレージの要素を返す

説明

public SplObjectStorage::current(): object

現在のストレージの要素を返します。

パラメータ

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

戻り値

現在のイテレータの位置にあるオブジェクトを返します。

変更履歴

バージョン 説明
8.1.0 SplObjectStorage::current() は、 現在の位置が不正な場合、 Error をスローするようになりました。 これより前のバージョンでは、 false を返していました。

例1 SplObjectStorage::current() の例

<?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) と同等
    
$data   $s->getInfo();

    
var_dump($object);
    
var_dump($data);
    
$s->next();
}
?>

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

object(stdClass)#2 (0) {
}
string(2) "d1"
object(stdClass)#3 (0) {
}
string(2) "d2"

参考

関連キーワード:  SplObjectStorage, ストレージ, 要素, エントリ, string, パラメータ, 位置, バージョン, stdClass, getInfo