SimpleXMLElement
PHP Manual

SimpleXMLElement::getDocNamespaces

(PHP 5 >= 5.1.2)

SimpleXMLElement::getDocNamespaces Returns namespaces declared in document

Opis

public array SimpleXMLElement::getDocNamespaces ([ bool $recursive = false ] )

Returns namespaces declared in document

Parametry

recursive

If specified, returns all namespaces declared in parent and child nodes. Otherwise, returns only namespaces declared in root node.

Zwracane wartości

The getDocNamespaces method returns an array of namespace names with their associated URIs.

Przykłady

Przykład #1 Get document namespaces

<?php

$xml 
= <<<XML
<?xml version="1.0" standalone="yes"?>
<people xmlns:p="http://example.org/ns">
    <p:person id="1">John Doe</p:person>
    <p:person id="2">Susie Q. Public</p:person>
</people>
XML;
 
$sxe = new SimpleXMLElement($xml);

$namespaces $sxe->getDocNamespaces();
var_dump($namespaces);

?>

Powyższy przykład wyświetli:

array(1) {
   ["p"]=>
   string(21) "http://example.org/ns"
}

Przykład #2 Working with multiple namespaces

<?php

$xml 
= <<<XML
<?xml version="1.0" standalone="yes"?>
<people xmlns:p="http://example.org/ns" xmlns:t="http://example.org/test">
    <p:person t:id="1">John Doe</p:person>
    <p:person t:id="2" a:addr="123 Street" xmlns:a="http://example.org/addr">
        Susie Q. Public
    </p:person>
</people>
XML;
 
$sxe = new SimpleXMLElement($xml);

$namespaces $sxe->getDocNamespaces(TRUE);
var_dump($namespaces);

?>

Powyższy przykład wyświetli:

array(3) {
  ["p"]=>
  string(21) "http://example.org/ns"
  ["t"]=>
  string(23) "http://example.org/test"
  ["a"]=>
  string(23) "http://example.org/addr"
}

Zobacz też:


SimpleXMLElement
PHP Manual