PHP 8.5.0 Alpha 2 available for testing

SimpleXMLElement::getDocNamespaces

(PHP 5 >= 5.1.2, PHP 7, PHP 8)

SimpleXMLElement::getDocNamespaces Devuelve los espacios de nombres declarados en un documento

Descripción

public SimpleXMLElement::getDocNamespaces(bool $recursive = false, bool $fromRoot = true): array|false

Devuelve los espacios de nombres declarados en un documento.

Parámetros

recursive

Si se especifica, devuelve todos los espacios de nombres declarados en los nodos padres e hijos. De lo contrario, devuelve únicamente los espacios de nombres declarados en el nodo raíz.

fromRoot

Permite verificar recursivamente los espacios de nombres bajo un nodo hijo en lugar de realizar esta verificación desde la raíz del documento XML.

Valores devueltos

El método getDocNamespaces devuelve un array de espacios de nombres con sus URL asociadas.

Ejemplos

Ejemplo #1 Obtiene los espacios de nombres del documento

<?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);

?>

El ejemplo anterior mostrará :

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

Ejemplo #2 Trabajo con múltiples espacios de nombres

<?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);

?>

El ejemplo anterior mostrará :

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

Ver también

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top