Saturday, May 23, 2026
HomeLanguagesPHP | DOMDocument xinclude() Function

PHP | DOMDocument xinclude() Function

The DOMDocument::xinclude() function is an inbuilt function in PHP which is used to substitute the XIncludes in a DOMDocument Object.

Syntax:

int DOMDocument::xinclude( int $options = 0 )

Parameters: This function accepts an optional single parameter $options which holds the libxml parameter.

Return Value: This function returns the number of XIncludes in the document, -1 if some processing failed, or FALSE if there were no substitutions.

Below examples illustrate the DOMDocument::xinclude() function in PHP:

Example 1: In this program, we will include from XML from new.xml to index.php.

  • new.xml




    <?xml version='1.0'?>
    <disclaimer>
      <p>
        This is the content from new.xml
        included using xinclude.
      </p>
    </disclaimer>

    
    
  • index.php




    <?php
    $xml = <<<EOD
    <?xml version="1.0" ?>
      <xi:include href="new.xml">
      </xi:include>
    </root>
    EOD;
      
    // Create a new DOMDocument
    $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();
    ?>

    
    
  • Output:
    This is the content from new.xml included using xinclude.

Example 2: In this program, we will add a fallback if xinclude fails.

  • index.php




    <?php
    $xml = <<<EOD
    <?xml version="1.0" ?>
      <xi:include href="wrong_name.xml">
       <xi:fallback>
        <error>xml not found</error>
       </xi:fallback>
      </xi:include>
    </root>
    EOD;
      
    // Create a new DOMDocument
    $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();
    ?>

    
    
  • Output:
    xml not found

Reference: https://www.php.net/manual/en/domdocument.xinclude.php

RELATED ARTICLES

1 COMMENT

Most Popular

Dominic
32514 POSTS0 COMMENTS
Milvus
131 POSTS0 COMMENTS
Nango Kala
6892 POSTS0 COMMENTS
Nicole Veronica
12012 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12107 POSTS0 COMMENTS
Shaida Kate Naidoo
7016 POSTS0 COMMENTS
Ted Musemwa
7262 POSTS0 COMMENTS
Thapelo Manthata
6975 POSTS0 COMMENTS
Umr Jansen
6963 POSTS0 COMMENTS