DOMDocument::xinclude

(PHP 5, PHP 7)

DOMDocument::xincludeBir DOMDocument nesnesindeki XInclude dosyalarını belgeye dahil eder

Açıklama

DOMDocument::xinclude ([ int $seçenekler ] ) : int

Bir DOMDocument nesnesinde, » XInclude mekanizması kullanılarak belgeye dahil edilen dosyaların içeriklerini yerlerine yerleştirir.

Bilginize:

libxml2'nin öğeleri özdevinimli olarak çözümlemesinden dolayı, eğer dahil edilen XML dosyanın kendine ekli bir DTD'si varsa bu yöntem beklenmedik sonuçlara yol açabilir.

Değiştirgeler

seçenekler

libxml sabitleri. PHP 5.1.0 ve Libxml 2.6.7'den itibaren kullanılabilmektedir.

Dönen Değerler

Belgeye dahil edilen dosyaların sayısı.

Örnekler

Örnek 1 - DOMDocument::xinclude() örneği

<?php

$xml 
= <<<EOD
<?xml version="1.0" ?>
<chapter xmlns:xi="http://www.w3.org/2001/XInclude">
 <title>Yabancı kitapları</title>
 <para>
  <xi:include href="kitap.xml">
   <xi:fallback>
    <error>xinclude: kitap.xml dosyasına rastlanmadı</error>
   </xi:fallback>
  </xi:include>
 </para>
</chapter>
EOD;

$dom = new DOMDocument;

// çıktı göze hoş görünsün
$dom->preserveWhiteSpace false;
$dom->formatOutput true;

// yutarıdaki XML dizgeyi yükleyelim
$dom->loadXML($xml);

// dahil edilecek dosyaların içeriklerini alalım
$dom->xinclude();

echo 
$dom->saveXML();

?>

Yukarıdaki örnek şuna benzer bir çıktı üretir:

<?xml version="1.0"?>
<chapter xmlns:xi="http://www.w3.org/2001/XInclude">
  <title>Yabancı kitaplar</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>