PHP | Función DOMElement removeAttributeNode()

La función DOMElement::removeAttributeNode() es una función incorporada en PHP que se utiliza para eliminar atributos de elementos.

Sintaxis:

bool DOMElement::removeAttributeNode( DOMAttr $oldnode )

Parámetros: esta función acepta un solo parámetro $oldnode que contiene el atributo que se eliminará.

Valor de retorno: esta función devuelve VERDADERO en caso de éxito o FALSO en caso de error.

Excepciones: esta función arroja DOM_NO_MODIFICATION_ALLOWED_ERR, si el Node es de solo lectura y DOM_NOT_FOUND_ERROR si $oldnode no es un atributo del elemento.

Los siguientes programas ilustran la función DOMElement::removeAttributeNode() en PHP:

Programa 1:

<?php
  
// Create a new DOMDocument
$dom = new DOMDocument();
  
// Load the XML
$dom->loadXML("<?xml version=\"1.0\"?>
<root>
    <html>
        <h1 id=\"my_id\"> Geeksforgeeks </h1>
        <h2> Second heading </h2>
    </html>
</root>");
  
// Get the elements
$node = $dom->getElementsByTagName('h1')[0];
  
echo "Before the removal of attributes: <br>";
  
// Get the attribute name and value
$attribute = $node->attributes->item(0);
$attribute_name = $attribute->name;
$attribute_value = $attribute->value;
  
echo $attribute_name . ' => ';
echo $attribute_value;
  
// Get the attribute to remove
$oldnode = $node->getAttributeNode('id');
  
// Remove the id attribute
$node->removeAttributeNode($oldnode);
  
echo "<br>After the removal of attributes: <br>";
  
// Get the attribute name and value
$attribute = $node->attributes->item(0);
$attribute_name = $attribute->name . ' => ';
$attribute_value = $attribute->value;
echo $attribute_name;
echo $attribute_value;
?>

Producción:

Before the removal of attributes:
id => my_id
After the removal of attributes:
=>          // Empty string means attribute is removed

Programa 2:

<?php
  
// Create a new DOMDocument
$dom = new DOMDocument();
  
// Load the XML
$dom->loadXML("<?xml version=\"1.0\"?>
<root>
    <html>
        <h1 id=\"my_id\" style=\"color:green;\" 
          class=\"my_class\"> Geeksforgeeks </h1>
        <h2> Second heading </h2>
    </html>
</root>");
  
// Get the elements
$node = $dom->getElementsByTagName('h1')[0];
  
echo "Before the removal of attributes: <br>";
  
// Get the attribute to remove
$oldnode = $node->getAttributeNode('id');
  
// Get the attribute count
$attributeCount = $node->attributes->count();
echo 'No of attributes => ' . $attributeCount;
  
// Remove the id attribute
$node->removeAttributeNode($oldnode);
  
echo "<br>After the removal of attributes: <br>";
  
// Get the attribute count
$attributeCount = $node->attributes->count();
echo 'No of attributes => ' . $attributeCount;
?>

Producción:

Before the removal of attributes:
No of attributes => 3
After the removal of attributes:
No of attributes => 2

Referencia: https://www.php.net/manual/en/domelement.removeattributenode.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 *