PHP simplexml_load_string()Función

PHP SimpleXML 参考手册Manual de referencia de PHP SimpleXML

Ejemplos

Convierte una cadena XML bien formada en un objeto SimpleXMLElement y luego genera las claves y 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

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


Sintaxis

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

Parámetros Descripción
data Requerido. Especifica una cadena XML bien formada.
classname Opcional. Especifica la clase del nuevo objeto.
options Opcional. Especifica parámetros adicionales de Libxml. Se establece especificando la opción como 1 o 0 (TRUE o FALSE, por ejemplo LIBXML_NOBLANKS(1)).

Valores posibles:

  • LIBXML_COMPACT - Activa la configuración optimizada de nodos (puede acelerar la aplicación)
  • LIBXML_DTDATTR - Establece los atributos DTD predeterminados
  • LIBXML_DTDLOAD - Carga subconjuntos adicionales
  • LIBXML_DTDVALID - Valida la validez del DTD
  • LIBXML_NOBLANKS - Elimina nodos vacíos
  • LIBXML_NOCDATA - Establece CDATA como nodos de texto
  • LIBXML_NOEMPTYTAG - Expande etiquetas vacías (por ejemplo <br/> a <br></br>), solo válido en las funciones DOMDocument->save() y DOMDocument->saveXML()
  • LIBXML_NOENT - Sustituye entidades
  • LIBXML_NOERROR - No muestra informes de errores
  • LIBXML_NONET - Detiene el acceso a la red al cargar documentos
  • LIBXML_NOWARNING - No muestra informes de advertencias
  • LIBXML_NOXMLDECL - Omite la declaración XML al almacenar un documento
  • LIBXML_NSCLEAN - Elimina declaraciones de espacios de nombres redundantes
  • LIBXML_PARSEHUGE - Establece el indicador XML_PARSE_HUGE para relajar cualquier limitación impuesta por el analizador. Esto afecta límites como la profundidad máxima del documento y el tamaño de los nodos de texto.
  • LIBXML_XINCLUDE - Usa sustituciones XInclude
  • LIBXML_ERR_ERROR - Obtiene errores corregibles
  • LIBXML_ERR_FATAL - Obtiene errores fatales
  • LIBXML_ERR_NONE - No obtiene errores
  • LIBXML_ERR_WARNING - Obtiene advertencias simples
  • LIBXML_VERSION - Obtiene la versión de libxml (por ejemplo 20605 o 20617)
  • LIBXML_DOTTED_VERSION - Obtiene la versión de libxml con puntos (por ejemplo 2.6.5 o 2.6.17)
ns Opcional. Especifica el prefijo o URI del espacio de nombres.
is_prefix Opcional. Especifica un valor booleano. Sinses un prefijo, TRUE; sinses un URI, FALSE. El valor predeterminado es FALSE.

Detalles técnicos

Valor de retorno: Devuelve un objeto SimpleXMLElement si tiene éxito, o FALSE si falla.
Versión de PHP: 5+


Más ejemplos

Ejemplo 1

Genera los datos de cada elemento 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->to . "<br>"; echo $xml->from . "<br>"; echo $xml->heading . "<br>"; echo $xml->body; ?>

Ejecutar ejemplo »

Ejemplo 2

Genera los nombres y datos de los elementos de 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 参考手册Manual de referencia de PHP SimpleXML Otras extensiones