PHP getDocNamespaces() 函数
PHP getDocNamespaces() 方法返回 XML 文档中声明的命名空间
( PHP >= 5.1.2 )
方法原型
getDocNamespaces( recursive, from_root );
方法参数
参数 | 描述 |
---|---|
recursive | 可选。传递一个布尔值 如果值为 TRUE,则返回所有父节点和子节点中声明的所有命名空间 如果值为 FALSE,则只返回根节点中声明的命名空间 默认是 FALSE |
from_root | 可选。传递一个布尔值 如果值为 TRUE,则检查 XML 文档的根节点中的命名空间 如果值为 FALSE,则检查子节点下的命名空间 默认是 TRUE |
方法返回值
返回一个带有相关 URI 的命名空间名称数组
更新日志
PHP 版本 | 更新说明 |
---|---|
PHP 5.4 | 新增了 from_root 参数 |
范例
下面的范例返回 XML 文档的父节点和子节点中声明的所有命名空间:
<?php $xml = <<<XML <?xml version="1.0" standalone="yes"?> <cars xmlns:c="https://twle.cn/ns"> <c:car id="1">Volvo</c:car> <c:car id="2">BMW</c:car> <c:car id="3" a:country="Sweden" xmlns:a="https://twle.cn/country">Saab</c:car> </cars> XML; $sxe=new SimpleXMLElement($xml); $ns=$sxe->getDocNamespaces(TRUE); var_dump($ns);
运行以上 PHP 范例,输出结果如下
array(2) { ["c"]=> string(18) "https://twle.cn/ns" ["a"]=> string(23) "https://twle.cn/country" }