PHP registerXPathNamespace() 函数
示例
为下一次 XPath 查询创建一个命名空间上下文
<?php
$xml=<<<XML
<book xmlns:chap="http://example.org/chapter-title">
<title>我的书</title>
<chapter id="1">
<chap:title>第一章</chap:title>
<para> Donec velit. Nullam eget tellus...</para>
</chapter>
<chapter id="2">
<chap:title>第二章</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 节点。
语法
SimpleXMLElement::registerXPathNamespace(prefix, ns)
参数值
参数 | 描述 |
---|---|
prefix | 必需。指定用于命名空间 ns 中 XPath 查询的命名空间前缀 |
ns | 必需。指定用于 XPath 查询的命名空间 |
技术详情
返回值 | 成功时返回 TRUE。失败时返回 FALSE |
---|---|
PHP 版本 | 5.1+ |
❮ PHP SimpleXML 参考