Derniers tutoriels de développement web
 

PHP simplexml_load_string() Function

<PHP SimpleXML Référence

Exemple

Convertir une chaîne XML bien formé dans un objet SimpleXMLElement, puis les touches de sortie et des éléments de l'objet:

<?php
$note=<<<XML
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
XML;

$xml=simplexml_load_string($note);
print_r($xml);
?>
»Exécuter exemple

Définition et utilisation

Le simplexml_load_string() convertit une chaîne XML bien formé en un objet SimpleXMLElement.


Syntaxe

simplexml_load_string( data,classname,options,ns,is_prefix );

Paramètre La description
data Champs obligatoires. Indique une chaîne XML bien formé
classname Optionnel. Indique la classe du nouvel objet
options Optionnel. Indique les paramètres Libxml supplémentaires. Est défini en spécifiant l'option et 1 ou 0 (TRUE or FALSE, eg LIBXML_NOBLANKS(1) )

Valeurs possibles:

  • LIBXML_COMPACT - Activer nœuds optimisation de l'allocation (peut accélérer l'application)
  • LIBXML_DTDATTR - Définir les attributs de DTD par défaut
  • LIBXML_DTDLOAD - charge externe sous-ensemble
  • LIBXML_DTDVALID - Valider avec la DTD
  • LIBXML_NOBLANKS - Retirer les nœuds blancs
  • LIBXML_NOCDATA - Fusion CDATA comme nœuds de texte
  • LIBXML_NOEMPTYTAG - Développer des balises vides (eg <br/> to <br></br>) , disponible uniquement dans la DOMDocument-> save() et DOMDocument-> saveXML() fonctions
  • LIBXML_NOENT - entités de substitution
  • LIBXML_NOERROR - Ne pas afficher les rapports d'erreur
  • LIBXML_NONET - Désactiver l'accès au réseau tandis que les documents de chargement
  • LIBXML_NOWARNING - Ne pas afficher les rapports d'avertissement
  • LIBXML_NOXMLDECL - Annule la déclaration XML lors de l'enregistrement d'un document
  • LIBXML_NSCLEAN - Suppression des déclarations d'espace de noms redondants
  • LIBXML_PARSEHUGE - Définit le drapeau XML_PARSE_HUGE qui détend toute limite de hardcoded l'analyseur. Cela affecte des limites comme la profondeur maximale d'un document et les limites de la taille des nœuds de texte
  • LIBXML_XINCLUDE - Mettre en œuvre la substitution XInclude
  • LIBXML_ERR_ERROR - Obtenez des erreurs récupérables
  • LIBXML_ERR_FATAL - Obtenir des erreurs fatales
  • LIBXML_ERR_NONE - Obtenir aucune erreur
  • LIBXML_ERR_WARNING - Obtenez des avertissements simples
  • LIBXML_VERSION - Obtenir une version libxml (eg 20605 or 20617) , (eg 20605 or 20617)
  • LIBXML_DOTTED_VERSION - Récupère la version en pointillés libxml (par exemple 2.6.5 ou 2.6.17)
ns Optionnel. Indique un préfixe d'espace de noms ou URI
is_prefix Optionnel. Spécifie une valeur booléenne. TRUE si ns est un préfixe. FAUX si ns est un URI. Par défaut est FAUX

Détails techniques

Valeur de retour: Retourne un objet SimpleXMLElement sur le succès. FAUX en cas d'échec
PHP Version: 5+

autres exemples

Exemple 1

Délivrer les données à partir de chaque élément dans la chaîne XML:

<?php
$note=<<<XML
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
XML;

$xml=simplexml_load_string($note);
echo $xml->to . "<br>";
echo $xml->from . "<br>";
echo $xml->heading . "<br>";
echo $xml->body;
?>
»Exécuter exemple

exemple 2

Sortie le nom de l'élément et les données pour chaque nœud enfant dans la chaîne XML:

<?php
$note=<<<XML
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
XML;

$xml=simplexml_load_string($note);
echo $xml->getName() . "<br>";

foreach($xml->children() as $child)
  {
  echo $child->getName() . ": " . $child . "<br>";
  }
?>
»Exécuter exemple

<PHP SimpleXML Référence