The SplObjectStorage::next() function is an inbuilt function in PHP which is used to move to next entry of storage.
Syntax:
void SplObjectStorage::next()
Parameters: This function does not accept any parameter. Return Value: This function does not return any value. Below programs illustrate the SplObjectStorage::next() function in PHP:
Program 1:
<?php
// Create an empty SplObjectStorage
$str = new SplObjectStorage();
$obj = new StdClass;
$obj2 = new StdClass;
// Use attach() function to add object
$str->attach($obj, "GFG");
$str->attach($obj2, "Geeks");
$str->rewind();
// Get the current data
var_dump($str->getInfo());
// Move on to next object
$str->next();
// Print result of next entry
var_dump($str->getInfo());
?>
Output:
string(3) "GFG" string(5) "Geeks"
Program 2:
<?php
// Create an Empty SplObjectStorage
$str = new SplObjectStorage();
$obj1 = new StdClass;
$obj2 = new StdClass;
$obj3 = new StdClass;
$obj4 = new StdClass;
// Use attach() function to add object
$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);
// Moving each time next entry
$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.next.php