# simplexml_load_file

(PHP 5)

simplexml_load_file — Interprets an XML file into an object

### Description

object simplexml_load_file ( string `$filename` [, string `$class_name` [, int `$options` [, string `$ns` [, bool `$is_prefix` ]]]] )

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

### Parameters

`filename`

  Path to the XML file

  > Note: Libxml 2 unescapes the URI, so if you want to pass e.g. b&c as the URI parameter a, you have to call simplexml_load_file(rawurlencode('http://example.com/?a=' . urlencode('b&c'))). Since PHP 5.1.0 you don't need to do this because PHP will do it for you.

`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`

  Since PHP 5.1.0 and Libxml 2.6.0, you may also use the `options` parameter to specify additional Libxml parameters.

`ns`

`is_prefix`

### Return Values

Returns an object of class SimpleXMLElement with properties containing the data held within the XML document. On errors, it will return `FALSE`.

### Examples

Example#1 Interpret an XML document

`<?php
// The file test.xml contains an XML document with a root element
// and at least an element /[root]/title.
if (file_exists('test.xml')) {
$xml = simplexml_load_file('test.xml');
print_r($xml);
} else {
exit('Failed to open test.xml.');
}
?>`

This script will display, on success:

    SimpleXMLElement Object
    (
      [title] => Example Title
      ...
    )

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

### See Also

- simplexml_load_string
- SimpleXMLElement->__construct()