(PHP 5, PHP 7, PHP 8)
DOMDocument::xinclude — Bir DOMDocument nesnesindeki XInclude dosyalarını belgeye dahil eder
Bir DOMDocument nesnesinde, » XIncludes mekanizması kullanılarak belgeye dahil edilen dosyaların içeriklerini yerlerine yerleştirir.
Bilginize:
libxml2'nin öğeleri otomatik 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.
Kayıtlı düğüm sınıflarının nesne kurucusu çağrılmaz.
seçenekler
Belgeye XIncludes ile dahil edilen dosyaların sayısı. İşlem başarısız olursa -1, dahil edilecek birşey yoksa false
döner.
Ö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>