PHP - SimpleXMLIterator::next() Function
Definition and Usage
XML is a mark-up language to share the data across the web, XML is for both human read-able and machine read-able. The SimpleXMLIterator is used to iterate all the nodes of an XML document.
The SimpleXMLIterator::next() function moves the iterator to the next element.
Syntax
SimpleXMLIterator::next(void);
Parameters
This function doesnt accept any parameters.
Return Values
This function doesnt return any parameters.
PHP Version
This function was first introduced in PHP Version 5 and works in all the later versions.
Example
Following example demonstrates the usage of the SimpleXMLIterator::next() function.
<html>
<head>
<body>
<?php
$doc=new DOMDocument;
$data="<?xml version = '1.0' encoding = 'UTF-8'?>
<Employee>
<Name>Raju</Name>
<Age>25</Age>
<Salary>2000</Salary>
</Employee>";
//Creating the SimpleXMLIterator
$xmlIterator = new SimpleXMLIterator($data);
$xmlIterator->rewind();
$xmlIterator->next();
$xmlIterator->next();
print_r($xmlIterator->current());
?>
</body>
</head>
</html>
This will produce following result −
SimpleXMLIterator Object ( [0] => 2000 )
Example
In the following example we are trying to retrieve all the elements of an XML file using the current() and next() functions −
<html>
<head>
<body>
<?php
$doc=new DOMDocument;
$data="<?xml version = '1.0' encoding = 'UTF-8'?>
<Employee>
<Name>Raju</Name>
<Age>25</Age>
<Salary>2000</Salary>
</Employee>";
//Creating the SimpleXMLIterator
$xmlIterator = new SimpleXMLIterator($data);
$xmlIterator->rewind();
print_r($xmlIterator->current());
echo "<br><br>";
$xmlIterator->next();
print_r($xmlIterator->current());
echo "<br><br>";
$xmlIterator->next();
print_r($xmlIterator->current());
?>
</body>
</head>
</html>
This will produce the following output −
SimpleXMLIterator Object ( [0] => Raju ) SimpleXMLIterator Object ( [0] => 25 ) SimpleXMLIterator Object ( [0] => 2000 )
Example
In the following example we are trying to display the contents of an XML file using the current() and next() functions −
data.xml
<Tutorial> <Name>JavaFX</Name> <Pages>535</Pages> <Author>Krishna</Author> <Version>11</Version> </Tutorial>
Sample.html
<html>
<head>
<body>
<?php
$doc = new DOMDocument;
//Creating the SimpleXMLIterator
$xmlIterator = new SimpleXMLIterator("data.xml", 0, TRUE, "", FALSE);
$xmlIterator->rewind();
print_r($xmlIterator->current());
echo "<br><br>";
print_r($xmlIterator->next());
print_r($xmlIterator->current());
echo "<br><br>";
print_r($xmlIterator->next());
print_r($xmlIterator->current());
?>
</body>
</head>
</html>
This will produce the following result −
SimpleXMLIterator Object ( [0] => JavaFX ) SimpleXMLIterator Object ( [0] => 535 ) SimpleXMLIterator Object ( [0] => Krishna )