simplexml_load_file
Interprets an XML file into an object
Description
SimpleXMLElement simplexml_load_file
( string $filename
[, string $class_name
= "SimpleXMLElement"
[, int $options
= 0
[, string $ns
= ""
[, bool $is_prefix
= false
]]]] )
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
-
Namespace prefix or URI.
-
is_prefix
-
TRUE
if ns
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, or FALSE
on failure.
WarningThis function may
return Boolean FALSE
, but may also return a non-Boolean value which
evaluates to FALSE
. Please read the section on Booleans for more
information. Use the ===
operator for testing the return value of this
function.
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
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.