php8.5
Home/ Manual/ simplexml / functions/ simplexml_load_file

simplexml_load_file

PHP function Edit on GitHub ✎

(PHP 5, PHP 7, PHP 8)

Interprets an XML file into an object

Description

simplexml_load_file(string $filename, string|null $class_name = SimpleXMLElement::class, int $options = 0, string $namespace_or_prefix = "", bool $is_prefix = false): SimpleXMLElement|false

Convert the well-formed XML document in the given file to an object.

Parameters

filename

Path to the XML file

class_name

You may use this optional parameter so that simplexml_load_file() will return an object of the specified class. That class should extend the SimpleXMLElement class.

options

Options

namespace_or_prefix

Namespace prefix or URI.

is_prefix

true if namespace_or_prefix is a prefix, false if it's a URI; defaults to false.

Return Values

Returns an object of class SimpleXMLElement with properties containing the data held within the XML document,Falseforfailure.

Falseproblem

Errors/Exceptions

Produces an E_WARNING error message for each error found in the XML data.

Tip

Use libxml_use_internal_errors() to suppress all XML errors, and libxml_get_errors() to iterate over them afterwards.

Examples

Interpret an XML document

php
<?php
// The file examples/book.xml contains an XML document with a root element
// and at least an element /[root]/title.

if (file_exists('examples/book.xml')) {
    $xml = simplexml_load_file('examples/book.xml');
 
    print_r($xml);
} else {
    exit('Failed to open examples/book.xml.');
}
?>

This script will display, on success:

output
SimpleXMLElement Object
(
  [book] => Array
  ...
)

At this point, you can go about using $xml->title and any other elements.

See Also

Source: reference/simplexml/functions/simplexml-load-file.xml · from the official PHP manual (php/doc-en)