The SplObjectStorage::key() function is an inbuilt function in PHP which is used to get the index of the currently pointing iterator. Syntax:
int SplObjectStorage::key()
Parameters: This function does not accept any parameter. Return Value: This function returns the index at which the iterator currently pointing. Below programs illustrate the SplObjectStorage::key() function in PHP: Program 1:
php
<?php // Create an empty SplObjectStorage $str = new SplObjectStorage();
$obj = new StdClass;
$str ->attach( $obj , "d1" );
$str -> rewind ();
// Get current index $index = $str ->key();
// Print Result var_dump( $index );
?> |
Output:
int(0)
Program 2:
php
<?php // Create an Empty SplObjectStorage $str = new SplObjectStorage();
$obj1 = new StdClass;
$obj2 = new StdClass;
$obj3 = new StdClass;
$obj4 = new StdClass;
$str ->attach( $obj1 , "GeeksforGeeks" );
$str ->attach( $obj2 , "GFG" );
$str ->attach( $obj3 );
$str ->attach( $obj4 , "DSA" );
$str -> rewind ();
// Iterate and print data on each index while ( $str ->valid()) {
// Get index
$index = $str ->key();
$object = $str ->current();
$data = $str ->getInfo();
var_dump( $index , $data );
$str ->next();
} ?> |
Output:
int(0) string(12) "GeksforGeeks" int(1) string(3) "GFG" int(2) NULL int(3) string(3) "DSA"
Reference: https://www.php.net/manual/en/splobjectstorage.key.php