PHP | Función simpleXMLElement niños()

Requisito previo: Leer conceptos básicos de XML
La función SimpleXMLElement::children() es una función incorporada en PHP que devuelve elementos secundarios de un Node dado en un objeto SimpleXML.
 

Sintaxis:  

SimpleXMLElement SimpleXMLElement::children( $namespace, $is_prefix )

Parámetro: Esta función acepta dos parámetros como se mencionó anteriormente y se describe a continuación:  

  • $namespace: Es un parámetro opcional. Especifica el espacio de nombres XML.
  • $is_prefix: Es un parámetro booleano que es opcional. Es True si $namespace es un prefijo y False si $namespace es una URL de espacio de nombres. Su valor predeterminado es Falso.

Valor de retorno: esta función devuelve un objeto SimpleXMLElement.
Nota: Esta función está disponible en PHP 5.0.1 y versiones posteriores.
Los siguientes programas ilustran la función SimpleXMLElement::children() en PHP:
Programa 1: Este programa muestra el valor del Node secundario. 

php

<?php
 
// Loading XML document to $user
$user = <<<XML
<user>
    <username>Geeks123</username>
    <name>GeeksforGeeks</name>
    <phone>+91-XXXXXXXXXX</phone>
    <address>
        Noida, UP, India
    </address>
</user>
XML;
 
// Loading string as simple xml object
$xml = simplexml_load_string($user);
 
// Print children node
foreach($xml->children() as $child) {
    echo "Child node: " . $child . "</br>";
}
 
?>

Producción: 

Child node: Geeks123
Child node: GeeksforGeeks
Child node: +91-XXXXXXXXXX
Child node: Noida, UP, India 

Programa 2: Este programa muestra el nombre de la etiqueta y su valor. 

php

<?php
 
// Loading XML document to $user
$user = <<<XML
<user>
    <username>Geeks123</username>
    <name>GeeksforGeeks</name>
    <phone>+91-XXXXXXXXXX</phone>
    <address>
        Noida, UP, India
    </address>
</user>
XML;
 
// Loading string as simple xml object
$xml = simplexml_load_string($user);
 
// Print children node
foreach($xml->children() as $child) {
    echo "Child node: " . $child->getName()
            . " => " . $child . "</br>";
}
 
?>

Producción: 

Child node: username => Geeks123
Child node: name => GeeksforGeeks
Child node: phone => +91-XXXXXXXXXX
Child node: address => Noida, UP, India 

Programa 3: Este programa recupera el nombre del atributo hijo con su valor. 

php

<?php
 
// Loading XML document to $user
$user = <<<XML
<user>
    <username font-color="green"
            font="awesome-fonts" font-size="72px">
        Geeks123
    </username>
     
    <name font-color="blue" font="awesome-fonts"
            font-size="36px">
        GeeksforGeeks
    </name>
     
    <phone font-color="blue" type="number"
            font="awesome-fonts" font-size="24px">
        +91-XXXXXXXXXX
    </phone>
     
    <address font-color="blue" font="awesome-fonts"
            font-size="24px">
        Noida, UP, India
    </address>
</user>
XML;
 
// Loading string as simple xml object
$xml = simplexml_load_string($user);
 
// Print children attribute
foreach($xml->children() as $child) {
    echo "Child name: " . $child->getName()
            . " =>" . $child . "<br>";
     
    foreach($child->attributes() as $key => $value)
        echo "      parameter: "
                . $key . " => " . $value . "</br>";
}
 
?>

Producción: 

Child name: username => Geeks123 
     parameter: font-color => green
     parameter: font => awesome-fonts
     parameter: font-size => 72px
Child name: name => GeeksforGeeks 
     parameter: font-color => blue
     parameter: font => awesome-fonts
     parameter: font-size => 36px
Child name: phone => +91-XXXXXXXXXX 
     parameter: font-color => blue
     parameter: type => number
     parameter: font => awesome-fonts
     parameter: font-size => 24px
Child name: address => Noida, UP, India 
     parameter: font-color => blue
     parameter: font => awesome-fonts
     parameter: font-size => 24px

Referencia: https://www.php.net/manual/en/simplexmlelement.children.php

Publicación traducida automáticamente

Artículo escrito por gekcho 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 *