PHP - Fonction SimpleXMLElement :: __ toString ()

Définition et utilisation

XML est un langage de balisage pour partager les données sur le Web, XML est à la fois lisible par l'homme et par la machine. La classe SimpleXMLElement représente un document XML en PHP.

le SimpleXMLElement::__toString() La fonction récupère et renvoie le contenu textuel de l'élément XML actuel.

Syntaxe

SimpleXMLElement::__toString();

Paramètres

Cette fonction n'accepte aucun paramètre.

Valeurs de retour

Cette fonction renvoie une valeur de chaîne représentant le contenu de l'élément XML courant en cas de succès et une chaîne vide en cas d'échec.

Version PHP

Cette fonction a été introduite pour la première fois dans la version 5 de PHP et fonctionne dans toutes les versions ultérieures.

Exemple

L'exemple suivant montre l'utilisation de la fonction SimpleXMLElement :: __ toString ().

<html>
   <head>
      <body>
         <?php
            $str="<?xml version='1.0'?> 
            <text> Welcome to Tutorialspoint</text>";
            $xml=new SimpleXMLElement($str);		 
            $res=$xml->__toString(); 
            print($res);
         ?>      
      </body>
   </head>   
</html>

Cela produira le résultat suivant -

Welcome to Tutorialspoint

Exemple

L'exemple suivant lit le contenu d'un fichier XML et imprime les noms des éléments qu'il contient -

data.xml:

<?xml version="1.0" encoding="utf-8"?>
<Tutorials>
   <Tutorial>
      <Name>JavaFX</Name>
      <Pages>535</Pages>
      <Author>Krishna</Author>
      <Version>11</Version>
   </Tutorial>

   <Tutorial>
      <Name>CoffeeScript</Name>
      <Pages>235</Pages>
      <Author>Kasyap</Author>
      <Version>2.5.1</Version>
   </Tutorial>
   
   <Tutorial>
      <Name>OpenCV</Name>
      <Pages>150</Pages>
      <Author>Maruti</Author>
      <Version>3.0</Version>
   </Tutorial>
</Tutorials>

sample.html:

<html>
   <head>      
      <body>         
         <?php
            $doc = new DOMDocument;
            $xml = simplexml_load_file("trail.xml");
		      //file to SimpleXMLElement 
            $xml = simplexml_import_dom($xml);
		
            print($xml->getName()."<br>");
            foreach ($xml->children() as $child){
               print("::". $child->getName() ."<br>");
               foreach ($child->children() as $child){
                  print(":::::". $child->getName() ."::".$child->__toString() ."<br>");
               }
            }
         ?>
      </body>
   </head>
</html>

Cela produira le résultat suivant -

Tutorials
::Tutorial
:::::Name::JavaFX
:::::Pages::535
:::::Author::Krishna
:::::Version::11
::Tutorial
:::::Name::CoffeeScript
:::::Pages::235
:::::Author::Kasyap
:::::Version::2.5.1
::Tutorial
:::::Name::OpenCV
:::::Pages::150
:::::Author::Maruti
:::::Version::3.0

Exemple

Voici un autre exemple de cette fonction -

<html>
   <head>      
      <body>         
         <?php
            $data = "<Tutorials>  </Tutorials>";
            $xml = simplexml_load_string($data);
            print_r($xml);

            //Adding the child node
            $child = $xml->addChild('Tutorial');
            $child->addChild('Name', 'OpenCV');
            $child->addChild('Pages', '230');
            $child->addChild('Author', 'Maruthi');
            $child->addChild('Version', '5.5');
 
            foreach ($xml->children() as $child){
               print("::". $child->getName() ."<br>");
               foreach ($child->children() as $child){
                  print(":::::". $child->getName());
                  print(" -- ". $child->__toString() ."<br>");

               }
            }
         ?>
      </body>
   </head>
</html>

Cela produira le résultat suivant -

SimpleXMLElement Object ( ) ::Tutorial
:::::Name -- OpenCV
:::::Pages -- 230
:::::Author -- Maruthi
:::::Version -- 5.5