simplexml_load_file
(PHP 5, PHP 7, PHP 8)
simplexml_load_file — Übersetzt eine XML-Datei in ein Objekt
Beschreibung
string
$filename
,?string
$class_name
= SimpleXMLElement::class,int
$options
= 0,string
$namespace_or_prefix
= "",bool
$is_prefix
= false
): SimpleXMLElement|false
Die Funktion wandelt das übergebene wohlgeformte (well-formed) XML-Dokument in ein Objekt um.
Parameter-Liste
-
filename
-
Der Pfad zur XML-Datei.
-
class_name
-
Der optionale Parameter
class_name
kann verwendet werden, wenn simplexml_load_file() ein Objekt der spezifischen Klasse zurückgeben soll. Die gewählte Klasse sollte von der Klasse SimpleXMLElement abgeleitet sein. -
options
-
Seit Libxml 2.6.0 kann zusätzlich der Parameter
options
verwendet werden, um weitere Libxml-Parameter anzugeben. -
namespace_or_prefix
-
Ein Namensraum-Präfix oder URI.
-
is_prefix
-
true
, wennnamespace_or_prefix
ein Präfix ist,false
, wenn er ein URI ist. Der Standardwert istfalse
.
Rückgabewerte
Gibt ein Objekt der Klasse SimpleXMLElement
zurück, dessen Eigenschaften die Daten des XML-Dokuments enthalten.
Bei einem Fehler wird false
zurückgegeben.
Diese Funktion kann sowohl das
boolsche false
zurückliefern, als auch einen nicht-boolschen Wert, welcher zu false
ausgewertet wird.
Weitere Informationen entnehmen Sie bitte dem Abschnitt über die
boolschen Typen. Benutzen Sie deshalb
den === Operator,
um den Rückgabewert dieser Funktion zu überprüfen.
Fehler/Exceptions
Generiert eine Fehlermeldung vom Typ E_WARNING
für
jeden in den XML-Daten gefundenen Fehler.
libxml_use_internal_errors() kann hier verwendet werden, um alle XML-Fehlermeldungen auszublenden, und libxml_get_errors(), um danach darüber zu iterieren.
Beispiele
Beispiel #1 Ein XML-Dokument auswerten
<?php
// Die Datei test.xml enthält ein XML-Dokument mit einem Wurzel-Element
// und mindestens einem Element /[root]/title.
if (file_exists('test.xml')) {
$xml = simplexml_load_file('test.xml');
print_r($xml);
} else {
exit('Konnte test.xml nicht öffnen.');
}
?>
Das Skript gibt nach erfolgreichem Laden folgendes aus:
SimpleXMLElement Object ( [title] => Beispiel-Titel ... )
Ab diesem Punkt können $xml->title
und andere
Elemente verwendet werden.
Siehe auch
- simplexml_load_string() - Übersetzt einen XML-String in ein Objekt
- SimpleXMLElement::__construct() - Erstellt ein neues SimpleXMLElement-Objekt
- Behandlung von XML-Fehlern
- libxml_use_internal_errors() - Disable libxml errors and allow user to fetch error information as needed
- Grundlegende Verwendung von SimpleXML
- libxml_set_streams_context() - Set the streams context for the next libxml document load or write