Pegasus InfoCorp: Web site design and web software development company

SimpleXMLElement->getDocNamespaces

(no version information, might be only in CVS)

SimpleXMLElement->getDocNamespaces --  Returns namespaces declared in document

Description

array SimpleXMLElement->getDocNamespaces ( [bool recursive] )

Returns namespaces declared in document

Parameters

recursive

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

Return Values

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

Examples

Example 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); // or use simplexml_load_string()

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

?>

Example 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); // or use simplexml_load_string()

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

?>