downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

SimpleXMLElement::registerXPathNamespace> <SimpleXMLElement::getName
Last updated: Fri, 14 Aug 2009

view this page in

SimpleXMLElement::getNamespaces

(PHP 5 >= 5.1.2)

SimpleXMLElement::getNamespaces Returns namespaces used in document

Description

SimpleXMLElement
array getNamespaces ([ bool $recursive ] )

Returns namespaces used in document

Parameters

recursive

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

Return Values

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

Examples

Example #1 Get document namespaces in use

<?php

$xml 
= <<<XML
<?xml version="1.0" standalone="yes"?>
<people xmlns:p="http://example.org/ns" xmlns:t="http://example.org/test">
    <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->getNamespaces(true);
var_dump($namespaces);

?>

The above example will output:

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

See Also



add a note add a note User Contributed Notes
SimpleXMLElement::getNamespaces
brettz9 aaat yah dot company
18-Feb-2009 06:26
A namespace without a prefix (the default) has the empty string as a key. Duplicate prefixes will use the namespace of the earliest ancestor.

 
show source | credits | stats | sitemap | contact | advertising | mirror sites