DOMDocument::xinclude
DOMDocument::xinclude
(PHP 5, PHP 7)
DOMDocument::xinclude — Substitutes XIncludes in a DOMDocument Object
Description
public int DOMDocument::xinclude ([ int $options ] )
This method substitutes » XIncludes in a DOMDocument object.
Note:
Due to libxml2 automatically resolving entities, this method will produce unexpected results if the included XML file have an attached DTD.
Parameters
-
options
-
libxml parameters. Available since PHP 5.1.0 and Libxml 2.6.7.
Return Values
Returns the number of XIncludes in the document, -1 if some processing failed, or FALSE
if there were no substitutions.
Examples
Example #1 DOMDocument::xinclude() example
<?php $xml = <<<EOD <?xml version="1.0" ?> <chapter xmlns:xi="http://www.w3.org/2001/XInclude"> <title>Books of the other guy..</title> <para> <xi:include href="php-book-xml"> <xi:fallback> <error>xinclude: book-xml not found<-error> <-xi:fallback> <-xi:include> <-para> <-chapter> EOD; $dom = new DOMDocument; -- let's have a nice output $dom->preserveWhiteSpace = false; $dom->formatOutput = true; -- load the XML string defined above $dom->loadXML($xml); -- substitute xincludes $dom->xinclude(); echo $dom->saveXML(); ?>
The above example will output something similar to:
<?xml version="1.0"?> <chapter xmlns:xi="http://www.w3.org/2001/XInclude"> <title>Books of the other guy..</title> <para> <row xml:base="/home/didou/book.xml"> <entry>The Grapes of Wrath</entry> <entry>John Steinbeck</entry> <entry>en</entry> <entry>0140186409</entry> </row> <row xml:base="/home/didou/book.xml"> <entry>The Pearl</entry> <entry>John Steinbeck</entry> <entry>en</entry> <entry>014017737X</entry> </row> <row xml:base="/home/didou/book.xml"> <entry>Samarcande</entry> <entry>Amine Maalouf</entry> <entry>fr</entry> <entry>2253051209</entry> </row> </para> </chapter>
© 1997–2017 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://secure.php.net/manual/en/domdocument.xinclude.php