SimpleXMLElement::__construct

(PHP 5, PHP 7)

SimpleXMLElement::__construct Creates a new SimpleXMLElement object

Description

final public SimpleXMLElement::__construct ( string $data [, int $options = 0 [, bool $data_is_url = false [, string $ns = "" [, bool $is_prefix = false ]]]] )

Creates a new SimpleXMLElement object.

Parameters

data

A well-formed XML string or the path or URL to an XML document if data_is_url is true.

options

Optionally used to specify additional Libxml parameters, which affect reading of XML documents. Options which affect the output of XML documents (e.g. LIBXML_NOEMPTYTAG) are silently ignored.

Note:

It may be necessary to pass LIBXML_PARSEHUGE to be able to process deeply nested XML or very large text nodes.

data_is_url

By default, data_is_url is false. Use true to specify that data is a path or URL to an XML document instead of string data.

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 a SimpleXMLElement object representing data.

Errors/Exceptions

Produces an E_WARNING error message for each error found in the XML data and additionally throws an Exception if the XML data could not be parsed.

Tip

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

Changelog

Version Description
5.2.0 Added the ns and is_prefix parameters.
5.1.2 Added the options and data_is_url parameters.

Examples

Note:

Listed examples may include example.php, which refers to the XML string found in the first example of the basic usage guide.

Example #1 Create a SimpleXMLElement object

<?php

include 'example.php';

$sxe = new SimpleXMLElement($xmlstr);
echo $sxe->movie[0]->title;

?>

The above example will output:

PHP: Behind the Parser

Example #2 Create a SimpleXMLElement object from a URL

<?php

$sxe = new SimpleXMLElement('http://example.org/document.xml', NULL, TRUE);
echo $sxe->asXML();

?>

See Also

© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/simplexmlelement.construct.php