The XMLReader::moveToAttributeNs() function is an inbuilt function in PHP which is used to move cursor on the named attribute in specified namespace. This method is useful when we want to get the attribute value of a specific attribute in a specific namespace and ignore all other namespaces.
Syntax:
bool XMLReader::moveToAttributeNs( string $localName, string $namespaceURI )
Parameters: This function accept two parameters as mentioned above and described below:
- $localName: It specifies the local name of attribute.
- $namespaceURI: It specifies the namespace URI.
Return Value: This function returns TRUE on success or FALSE on failure.
Below given programs illustrate the XMLReader::moveToAttributeNs() function in PHP:
Program 1:
Filename: data.xml
<? xml version = "1.0" encoding = "utf-8" ?> < div xmlns:z = "my_namespace" > < z:h1 z:attrib = "value" > Foo Bar </ z:h1 > </ div > |
Filename: index.php
<?php // Create a new XMLReader instance $XMLReader = new XMLReader(); // Open the XML file $XMLReader ->open( 'data.xml' ); // Iterate through the XML nodes // to reach the h1 node $XMLReader ->read(); $XMLReader ->read(); $XMLReader ->read(); // Move to attribute with name attrib // with the namespace "my_namespace" $XMLReader ->moveToAttributeNs( "attrib" , "wrong_namespace" ); // Output the value to browser echo $XMLReader ->value; ?> |
Output:
// Empty string because there is no namespace called "wrong_namespace"
Program 2:
Filename: data.xml
<? xml version = "1.0" encoding = "utf-8" ?> < div xmlns:z = "my_namespace" > < z:h1 z:attrib = "value" > Foo Bar </ z:h1 > </ div > |
Filename: index.php
<?php // Create a new XMLReader instance $XMLReader = new XMLReader(); // Open the XML file $XMLReader ->open( 'data.xml' ); // Iterate through the XML nodes // to reach the z:h1 node $XMLReader ->read(); $XMLReader ->read(); $XMLReader ->read(); // Move to attribute with name attrib // with the namespace "my_namespace" $XMLReader ->moveToAttributeNs( "attrib" , "my_namespace" ); // Output the value to browser echo $XMLReader ->value; ?> |
Output:
value
Reference: https://www.php.net/manual/en/xmlreader.movetoattributens.php