Los últimos tutoriales de desarrollo web
 

PHP simplexml_load_string() Function

<PHP SimpleXML Referencia

Ejemplo

Convertir una cadena XML bien formado en un objeto SimpleXMLElement, luego las teclas de salida y los elementos del objeto:

<?php
$note=<<<XML
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
XML;

$xml=simplexml_load_string($note);
print_r($xml);
?>
Ejecutar ejemplo »

Definición y Uso

El simplexml_load_string() función convierte una cadena XML bien formado en un objeto SimpleXMLElement.


Sintaxis

simplexml_load_string( data,classname,options,ns,is_prefix );

Parámetro Descripción
data Necesario. Especifica una cadena XML bien formado
classname Opcional. Especifica la clase del nuevo objeto
options Opcional. Especifica parámetros adicionales Libxml. Se establece mediante la especificación de la opción y 1 o 0 (TRUE or FALSE, eg LIBXML_NOBLANKS(1) )

Valores posibles:

  • LIBXML_COMPACT - Activar los nodos de la optimización de la asignación (puede acelerar la aplicación)
  • DTD atributos por defecto Set - LIBXML_DTDATTR
  • LIBXML_DTDLOAD - Cargar subconjunto externo
  • LIBXML_DTDVALID - Validar con el DTD
  • LIBXML_NOBLANKS - Quitar nodos en blanco
  • LIBXML_NOCDATA - Combinar CDATA como nodos de texto
  • LIBXML_NOEMPTYTAG - Ampliar las etiquetas vacías (eg <br/> to <br></br>) , sólo está disponible en el DOMDocument-> save() y DOMDocument-> saveXML() funciones
  • LIBXML_NOENT - entidades sustitutos
  • LIBXML_NOERROR - No mostrar los informes de errores
  • LIBXML_NONET - Desactivar acceso a la red, mientras que la carga de documentos
  • LIBXML_NOWARNING - No mostrar informes de alerta
  • LIBXML_NOXMLDECL - La caída de la declaración XML al guardar un documento
  • LIBXML_NSCLEAN - Retirar las declaraciones de espacio de nombres redundantes
  • LIBXML_PARSEHUGE - Establece el marcador XML_PARSE_HUGE, que relaja ningún límite codificado desde el analizador. Esto afecta a los límites como la profundidad máxima de un documento y los límites del tamaño de los nodos de texto
  • LIBXML_XINCLUDE - Poner en práctica la sustitución XInclude
  • LIBXML_ERR_ERROR - Obtener errores recuperables
  • LIBXML_ERR_FATAL - Obtener errores fatales
  • LIBXML_ERR_NONE - Obtener errores
  • LIBXML_ERR_WARNING - Obtener simples advertencias
  • LIBXML_VERSION - Obtenga la versión libxml (eg 20605 or 20617)
  • LIBXML_DOTTED_VERSION - Obtenga la versión libxml de puntos (por ejemplo, 2.6.5 o 2.6.17)
ns Opcional. Especifica un prefijo de espacio de nombres o URI
is_prefix Opcional. Especifica un valor booleano. TRUE si ns es un prefijo. FALSO si ns es un URI. Por defecto es FALSO

Detalles técnicos

Valor de retorno: Devuelve un objeto SimpleXMLElement en caso de éxito. En caso de fallo
Versión de PHP: 5+

Más ejemplos

Ejemplo 1

Salida de los datos de cada elemento de la cadena XML:

<?php
$note=<<<XML
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
XML;

$xml=simplexml_load_string($note);
echo $xml->to . "<br>";
echo $xml->from . "<br>";
echo $xml->heading . "<br>";
echo $xml->body;
?>
Ejecutar ejemplo »

Ejemplo 2

Nombre y datos de salida del elemento para cada nodo hijo en la cadena XML:

<?php
$note=<<<XML
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
XML;

$xml=simplexml_load_string($note);
echo $xml->getName() . "<br>";

foreach($xml->children() as $child)
  {
  echo $child->getName() . ": " . $child . "<br>";
  }
?>
Ejecutar ejemplo »

<PHP SimpleXML Referencia