PHP registerXPathNamespace() 函数

PHP SimpleXML 参考手册 PHP SimpleXML 参考手册

实例

为下一个 XPath 查询创建命名空间上下文:

   <?php
  $xml=<<<XML
  <book xmlns:chap="http://example.org/chapter-title">
   <title>My Book</title>
   <chapter id="1">
   <chap:title>Chapter 1</chap:title>
   <para>Donec velit. Nullam eget tellus...</para>
   </chapter>
   <chapter id="2">
   <chap:title>Chapter 2</chap:title>
   <para>Lorem ipsum dolor sit amet....</para>
   </chapter>
  </book>
  XML;
  
   $sxe=new SimpleXMLElement($xml);
   $sxe->registerXPathNamespace('c','http://example.org/chapter-title');
   $result=$sxe->xpath('//c:title');
  foreach ($result as $title)
   {
   echo $title . "<br>";
   }
  ?> 
 

定义和用法

registerXPathNamespace() 函数为下一个 XPath 查询创建命名空间上下文。

如果在 XML 文档中改变命名空间前缀,这个函数很有用。registerXPathNamespace()函数将创建一个指定的命名空间前缀,使受影响的 XML 节点可以在不改变应用程序代码太多的情况下进行访问。


语法

registerXPathNamespace( prefix, ns);

参数 描述
prefix 必需。规定在 ns 指定的命名空间的 XPath 查询中使用的的命名空间前缀。
ns 必需。规定用于 XPath 查询的命名空间。

技术细节

返回值: 如果成功则返回 TRUE,如果失败则返回 FALSE。
PHP 版本: 5.2+


PHP SimpleXML 参考手册 PHP SimpleXML 参考手册