The XMLReader::getAttributeNo() function is an inbuilt function in PHP which is used to get the value of an attribute based on its position or an empty string if attribute does not exist or not positioned on an element node.
Syntax:
string XMLReader::getAttributeNo( int $index )
Parameters: This function accepts a single parameter $index which holds the index of the attribute value to fetch.
Return Value: This function returns value of the attribute on success or an empty string.
Below examples illustrate the XMLReader::getAttributeNo() function in PHP:
Example 1:
- data.xml
<?
xml
version
=
"1.0"
encoding
=
"utf-8"
?>
<
body
>
<
h1
> Hello </
h1
>
</
body
>
- index.php
<?php
// Create a new XMLReader instance
$XMLReader
=
new
XMLReader();
// Load the XML file
$XMLReader
->open(
'data.xml'
);
// Iterate through the XML
while
(
$XMLReader
->read()) {
if
(
$XMLReader
->nodeType == XMLREADER::ELEMENT) {
// Get the value of first attribute
$value
=
$XMLReader
->getAttributeNo(0);
// Output the value to browser
echo
$value
.
"<br>"
;
}
}
?>
- Output:
// Empty string because no attributes are there in XML
Example 2:
- data.xml
<?
xml
version
=
"1.0"
encoding
=
"utf-8"
?>
<
body
>
<
h1
id
=
"neveropen"
> Hello </
h1
>
<
h2
id
=
"my_id"
> World </
h2
>
</
body
>
- index.php
<?php
// Create a new XMLReader instance
$XMLReader
=
new
XMLReader();
// Load the XML file
$XMLReader
->open(
'data.xml'
);
// Iterate through the XML
while
(
$XMLReader
->read()) {
if
(
$XMLReader
->nodeType == XMLREADER::ELEMENT) {
// Get the value of first attribute
$value
=
$XMLReader
->getAttributeNo(0);
// Output the value to browser
echo
$value
.
"<br>"
;
}
}
?>
- Output:
neveropen my_id
Reference: https://www.php.net/manual/en/xmlreader.getattributeno.php