2011-11-11 6 views
6

Bien, entonces tengo un script php y necesito ver de alguna manera el valor de una de mis variables. El caso es que esta variable es una cadena muy larga de XML que se devolvió desde un servidor. Sé que tiene un mensaje de error, pero necesito ver lo que dice. Si intento e Imprimo o repito el valor, solo muestra la parte seguida de un ... o si uso var_dump, hace lo mismo. Incluso he llegado a intentar hacer eco de una alerta de JavaScript con el valor, pero eso no funciona porque hay comillas simples y dobles en el XML que hacen que las comillas de alerta no se reconozcan correctamente. Solo necesito ver el valor de esta variable. ¿Algún consejo? Gracias.¿Cómo hacer eco de una cadena XML en una página HTML para la depuración?

Edit: En realidad, dijo eso mal. El eco y la impresión no muestran el valor correctamente porque las etiquetas están en corchetes <> por lo que se reconoce como una etiqueta html.

+0

¿Podría intentar escribir la cadena en un archivo mediante fopen/fwrite? – rogerlsmith

Respuesta

13

Puede usar htmlentities para generar la cadena XML para que pueda obtener una vista en texto plano de ella en un navegador.

<?php echo htmlentities($xml_string); ?> 

Como alternativa, se puede analizar la cadena XML para revelar el mensaje de error, pero esto puede ser más complicado que lo que necesita.

5

Trate echo htmlentities($var, ENT_COMPAT, 'UTF-8')

+0

¡Gracias increíbles! – jcmitch

0

Se podía salvar a la cadena XML en un archivo. Si se trata de un XML bien formado, puede verlo con cada navegador (y expandir/colapsar nodos ^^).

1

i usaly uso:

echo nl2br(str_replace('<', '&lt;', $xml)); 

como único el < que son un problema

2

siempre uso esto:

echo "<pre>". htmlentities($s) . "</pre>"; 
Cuestiones relacionadas