PHP | Función XMLReader getAttributeNs()

La función XMLReader::getAttributeNs() es una función incorporada en PHP que se usa para obtener el valor de un atributo por nombre y URI de espacio de nombres o una string vacía si el atributo no existe o no está posicionado en un Node de elemento.

Sintaxis:

string XMLReader::getAttributeNs( 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.
  • $namespaceURI: Especifica la URI del espacio de nombres.

Valor devuelto: esta función devuelve el valor del atributo en caso de éxito o una string vacía en caso de error.

Los siguientes ejemplos ilustran la función XMLReader::getAttributeNs() en PHP:

Ejemplo 1:

  • datos.xml

    <?xml version="1.0" encoding="utf-8"?>
    <div xmlns:x="geeksforgeeks">
        <x:h1 x:attrib="value">
          Namespaced Text 
        </x:h1>
    </div>
  • índice.php

    <?php
      
    // Create a new XMLReader instance
    $XMLReader = new XMLReader();
      
    // Load the XML file
    $XMLReader->open('data.xml');
      
    // Move to next node three times
    $XMLReader->read();
    $XMLReader->read();
    $XMLReader->read();
      
    // Get the value of attribute but
    // give a wrong namespace here
    $value = $XMLReader->getAttributeNs(
        "attrib", "wrong_namespace");
      
    // Output the value to browser
    echo $value . "<br>";
      
    ?>
  • Producción:
     // Empty string because namespace name doesn't match

Ejemplo 2:

  • datos.xml

    <?xml version="1.0" encoding="utf-8"?>
    <div xmlns:x="my_namespace">
        <x:h1 x:attrib="value"
          Namespaced Text 
        </x:h1>
    </div>
  • índice.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 attribute with name "attrib"
            // and namespace "my_namespace"
            $value = $XMLReader->
                   getAttributeNs("attrib", "my_namespace");
      
            // Output the value to browser
            echo $value . "<br>";
        }
    }
    ?>
  • Producción:
    value

Referencia: https://www.php.net/manual/en/xmlreader.getattributens.php

Publicación traducida automáticamente

Artículo escrito por gurrrung y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *