Monday, October 6, 2025
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

Most Popular

Dominic
32338 POSTS0 COMMENTS
Milvus
86 POSTS0 COMMENTS
Nango Kala
6707 POSTS0 COMMENTS
Nicole Veronica
11871 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11936 POSTS0 COMMENTS
Shaida Kate Naidoo
6825 POSTS0 COMMENTS
Ted Musemwa
7090 POSTS0 COMMENTS
Thapelo Manthata
6779 POSTS0 COMMENTS
Umr Jansen
6782 POSTS0 COMMENTS