首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

DOMDocument::xinclude

(PHP 5, PHP 7)

DOMDocument :: xinclude - 在DOMDocument对象中替换XIncludes

描述

代码语言:javascript
复制
public int DOMDocument::xinclude ([ int $options ] )

此方法在DOMDocument对象中替换»XIncludes

注意

由于libxml2自动解析实体,如果包含的XML文件具有附加的DTD,则此方法会产生意外的结果。

参数

options

libxml参数。自PHP 5.1.0和Libxml 2.6.7开始提供。

返回值

返回文档中XIncludes的数量,如果某些处理失败或者如何没有替换返回FALSE,则返回-1 。

例子

示例#1 DOMDocument :: xinclude()示例

代码语言:javascript
复制
<?php

$xml = <<<EOD
<?xml version="1.0" ?>
<chapter xmlns:xi="http://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();

?>

上面的例子会输出类似于:

代码语言:javascript
复制
<?xml version="1.0"?>
<chapter xmlns:xi="http://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>

← DOMDocument::validate

DOMDocumentFragment →

扫码关注腾讯云开发者

领取腾讯云代金券