Php/func simplexml getdocnamespaces

来自菜鸟教程
跳转至:导航、​搜索

PHP getDocNamespaces()函数

Simple PHP SimpleXML参考

返回在XML文档的根目录中声明的名称空间:

 <?php
$xml=<<<XML
<?xml version="1.0" standalone="yes"?>
<cars xmlns:c="http://example.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://example.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://example.com/country">Saab</c:car> 
</cars>
XML;


$sxe=new SimpleXMLElement($xml);
$ns=$sxe->getDocNamespaces(TRUE);

 var_dump($ns);
?>

Simple PHP SimpleXML参考