PHP getDocNamespaces() 函数
示例
返回 XML 文档根节点中声明的命名空间
<?php
$xml=<<<XML
<?xml version="1.0" standalone="yes"?>
<cars xmlns:c="http://w3schools.com/ns">
<c:car id="1">Volvo</c:car>
<c:car id="2">BMW</c:car>
<c:car id="3">Saab</c:car>
</cars>
XML;
$sxe=new SimpleXMLElement($xml);
$ns=$sxe->getDocNamespaces();
print_r($ns);
?>
运行示例 »
定义和用法
getDocNamespaces() 函数返回在 XML 文档中声明的命名空间。
语法
SimpleXMLElement::getDocNamespaces(recursive, from_root)
参数值
参数 | 描述 |
---|---|
recursive | 可选。 指定一个布尔值。 如果为 TRUE,则返回文档中声明的所有命名空间。 如果为 FALSE,则仅返回根节点中声明的命名空间。 默认值为 FALSE |
from_root | 可选。 指定一个布尔值。 TRUE 检查 XML 文档根节点中的命名空间。 FALSE 检查子节点下的命名空间。 默认值为 TRUE |
技术细节
返回值 | 一个包含命名空间名称与其关联 URI 的数组 |
---|---|
PHP 版本 | 5.1.2+ |
PHP 变更日志 | PHP 5.4: 添加了 from_root 参数 |
更多示例
示例
返回 XML 文档中声明的所有命名空间
<?php
$xml=<<<XML
<?xml version="1.0" standalone="yes"?>
<cars xmlns:c="http://w3schools.com/ns">
<c:car id="1">Volvo</c:car>
<c:car id="2">BMW</c:car>
<c:car id="3" a:country="Sweden" xmlns:a="http://w3schools.com/country">Saab</c:car>
</cars>
XML;
$sxe=new SimpleXMLElement($xml);
$ns=$sxe->getDocNamespaces(TRUE);
var_dump($ns);
?>
运行示例 »
❮ PHP SimpleXML 参考