La función XMLReader::moveToAttributeNo() es una función incorporada en PHP que se usa para mover el cursor a un atributo por índice. Esta función es útil cuando un Node tiene múltiples atributos pero solo queremos atributos específicos.
Sintaxis:
bool XMLReader::moveToAttributeNo( int $index )
Parámetros: Esta función acepta un único parámetro $índice que contiene la posición del atributo.
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::moveToAttributeNo() en PHP:
Programa 1: en este programa, obtendremos el valor del segundo atributo de un Node específico.
Nombre de archivo: datos.xml
<?xml version="1.0" encoding="utf-8"?> <div> <h1 att1="first" attr2="second"> Text </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 second attribute // of current node $XMLReader->moveToAttributeNo(1); // Output the value to browser echo $XMLReader->value; ?>
Producción:
second
Programa 2: En este programa obtendremos el valor del primer atributo de todos los Nodes.
Nombre de archivo: datos.xml
<?xml version="1.0" encoding="utf-8"?> <div> <h1 attribute="geeksforgeeks"> Text </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 while ($XMLReader->read()) { if ($XMLReader->nodeType == XMLREADER::ELEMENT) { // Move to first attribute $XMLReader->moveToAttributeNo(0); // Output the value to browser echo $XMLReader->value; } } ?>
Producción:
geeksforgeeks
Referencia: https://www.php.net/manual/en/xmlreader.movetoattributeno.php