PHP getDocNamespaces() 関数

❮ PHP SimpleXML リファレンス

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文書で宣言されている名前空間を返します。


構文

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://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 リファレンス