(PHP 5 >= 5.1.2, PHP 7)
SimpleXMLElement::getNamespaces — Returns namespaces used in document
public SimpleXMLElement::getNamespaces ([ bool $recursive = false ] ) : array
Returns namespaces used in document
recursive
If specified, returns all namespaces used in parent and child nodes. Otherwise, returns only namespaces used in root node.
The getNamespaces
method returns an array of namespace names with their associated URIs.
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" }
© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/simplexmlelement.getnamespaces.php