PHPのgetDocNamespaces()関数
例
XML文書のルート・ノードは、名前空間を宣言返します:
<?php
$xml=<<<XML
<?xml version="1.0" standalone="yes"?>
<cars xmlns:c="http://w3cschool.cc/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);
?>
$xml=<<<XML
<?xml version="1.0" standalone="yes"?>
<cars xmlns:c="http://w3cschool.cc/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文書宣言を返します。
文法
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パラメータが追加されました。 |
より多くの例
例1
親と子のXML文書がすべての名前空間宣言をノードを返します:
<?php
$xml=<<<XML
<?xml version="1.0" standalone="yes"?>
<cars xmlns:c="http://w3cschool.cc/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://w3cschool.cc/country">Saab</c:car>
</cars>
XML;
$sxe=new SimpleXMLElement($xml);
$ns=$sxe->getDocNamespaces(TRUE);
var_dump($ns);
?>
$xml=<<<XML
<?xml version="1.0" standalone="yes"?>
<cars xmlns:c="http://w3cschool.cc/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://w3cschool.cc/country">Saab</c:car>
</cars>
XML;
$sxe=new SimpleXMLElement($xml);
$ns=$sxe->getDocNamespaces(TRUE);
var_dump($ns);
?>
実行中のインスタンス»
PHPのSimpleXMLリファレンスマニュアル