appendXML()"HREF="function.dom-domdocumentfragment-appendxml.html"> Manuál PHP Předcházející Další (no ve..."/>
Forum und email
DOMDocument->xinclude()

DOMDocument->xinclude()

(no version information, might be only in CVS)

DOMDocument->xinclude() --  Substitutes XIncludes in a DOMDocument Object

Popis

class DOMDocument {

int xinclude ( [int options] )

}

This method substitutes XIncludes in a DOMDocument object.

Poznámka: Due to libxml2 automatically resolving entities, this method will produce unexpected results if the included XML file have an attached DTD.

Seznam parametrů

options

libxml parameters. Available since PHP 5.1.0 and Libxml 2.6.7.

Návratové hodnoty

Returns the number of XIncludes in the document.

Příklady

Příklad 1. DOMDocument->xinclude() example

<?php

$xml
= <<<EOD
<?xml version="1.0" ?>
<chapter xmlns:xi="https://www.w3.org/2001/XInclude">
<title>Books of the other guy..</title>
<para>
  <xi:include href="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();

?>

Výše uvedený příklad vypíše něco jako:

<?xml version="1.0"?>
<chapter xmlns:xi="https://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>