La función XMLReader::moveToAttributeNs() es una función incorporada en PHP que se usa para mover el cursor sobre el atributo nombrado en el espacio de nombres especificado. Este método es útil cuando queremos obtener el valor del atributo de un atributo específico en un espacio de nombres específico e ignorar todos los demás espacios de nombres.
Sintaxis:
bool XMLReader::moveToAttributeNs( string $localName, string $namespaceURI )
Parámetros: esta función acepta dos parámetros, como se mencionó anteriormente y se describe a continuación:
- $localName: Especifica el nombre local del atributo.
- $namespaceURI: Especifica la URI del espacio de nombres.
Valor de retorno: esta función devuelve VERDADERO en caso de éxito o FALSO en caso de error.
Los siguientes programas ilustran la función XMLReader::moveToAttributeNs() en PHP:
Programa 1:
Nombre de archivo: data.xml
<?xml version="1.0" encoding="utf-8"?> <div xmlns:z="my_namespace"> <z:h1 z:attrib="value"> Foo Bar </z:h1> </div>
Nombre de archivo: 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; ?>
Producción:
// Empty string because there is no namespace called "wrong_namespace"
Programa 2:
Nombre de archivo: data.xml
<?xml version="1.0" encoding="utf-8"?> <div xmlns:z="my_namespace"> <z:h1 z:attrib="value"> Foo Bar </z:h1> </div>
Nombre de archivo: 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; ?>
Producción:
value
Referencia: https://www.php.net/manual/en/xmlreader.movetoattributens.php