(PHP 5, PHP 7)
simplexml_load_file — Convertit un fichier XML en objet
$filename
[, string $class_name
= "SimpleXMLElement"
[, int $options
= 0
[, string $ns
= ""
[, bool $is_prefix
= false
]]]] )
Convertit le document XML filename
en un objet de type SimpleXMLElement.
filename
Chemin vers le fichier XML
Note:
Libxml 2 supprime la protection des caractères des URI, alors si vous voulez passer par exemple b&c comme paramètre URI à a, vous devez appeler simplexml_load_file(rawurlencode('http://example.com/?a=' . urlencode('b&c'))). Depuis PHP 5.1.0, vous n'avez plus besoin de faire cela puisque PHP le fait pour vous.
class_name
Vous pouvez utiliser ce paramètre optionnel et ainsi, la fonction simplexml_load_file() retournera un objet de la classe spécifiée. Cette classe doit étendre la classe SimpleXMLElement.
options
Depuis PHP 5.1.0 et Libxml 2.6.0, vous pouvez aussi utiliser le paramètre
options
pour spécifier des paramètres additionnels Libxml.
ns
Préfixe ou l'URI de l'espace de noms.
is_prefix
TRUE
si ns
est un préfixe,
FALSE
si c'est l'URI ; par défaut, FALSE
.
Retourne un objet de la classe SimpleXMLElement
dont les propriétés contiennent les données du document XML, ou FALSE
si une erreur survient.
Cette fonction peut
retourner FALSE
, mais elle peut aussi retourner une valeur équivalent à
FALSE
. Veuillez lire la section sur
les booléens pour plus d'informations.
Utilisez l'opérateur ===
pour tester la valeur de retour exacte de cette fonction.
Produit un message d'erreur de niveau E_WARNING
pour chaque erreur trouvée dans les données XML.
Utilisez la fonction libxml_use_internal_errors() pour supprimer toutes les erreurs XML, et la fonction libxml_get_errors() pour les parcourir.
Exemple #1 Interprétation d'un document XML
<?php
// Le fichier test.xml contient un document XML avec un élément racine
// et au moins un élément /[racine]/title.
if (file_exists('test.xml')) {
$xml = simplexml_load_file('test.xml');
print_r($xml);
} else {
exit('Echec lors de l\'ouverture du fichier test.xml.');
}
?>
Ce script affichera, en cas de succès :
SimpleXMLElement Object ( [title] => Example Title ... )
À partir de là, vous pouvez utiliser $xml->title et tout autre élément.