simplexml_load_string

(PHP 5, PHP 7)

simplexml_load_string Interpreta un string de XML en un objeto

Descripción

simplexml_load_string ( string $data [, string $class_name = "SimpleXMLElement" [, int $options = 0 [, string $ns = "" [, bool $is_prefix = false ]]]] ) : SimpleXMLElement

Toma un string XML correcto y lo retorna como objeto.

Parámetros

data

Un string XML correcto

class_name

Este parámetro opcional puede ser usado cuando se necesita que simplexml_load_file() retorne un objeto de la clase especificada. Esa clase debe extender de la clase SimpleXMLElement.

options

Desde PHP 5.1.0 y Libxml 2.6.0 puede usarse options para especificar parámetros Libxml adicionales.

ns

El prefijo del espacio de nombres o un URI.

is_prefix

TRUE si ns es un prefijo, FALSE si es un URI; por defecto es FALSE.

Valores devueltos

Retorna un object de tipo SimpleXMLElement cuyas propiedades contienen los datos del documento XML, o FALSE en caso de error.

Errores/Excepciones

Produce un mensaje de error E_WARNING para cada error encontrado en los datos XML.

Sugerencia

Usar libxml_use_internal_errors() para suprimir todos los errores XML y libxml_get_errors() para iterar sobre cada uno de ellos posteriormente.

Ejemplos

Ejemplo #1 Interpreta un string XML

<?php
$string 
= <<<XML
<?xml version='1.0'?> 
<document>
 <title>¿Cuarenta qué?</title>
 <from>Joe</from>
 <to>Jane</to>
 <body>
  Sé que esa es la respuesta pero, ¿cuál es la pregunta?
 </body>
</document>
XML;

$xml simplexml_load_string($string);

print_r($xml);
?>

El resultado del ejemplo sería:

SimpleXMLElement Object
(
  [titulo] => ¿Cuarenta qué?
  [de] => Joe
  [para] => Jane
  [mensaje] => Sé que esa es la respuesta pero, ¿cuál es la pregunta?
)

En este punto, se puede usar $xml->mensaje y similares.

Ver también