Estoy usando PHP para generar un XML personalizado basado en los valores almacenados en una base de datos MySQL. Tengo el siguiente al inicio de la condición:Declaración XML que no funciona bien con PHP
echo '<?xml version="1.0" encoding="UTF-8"?>';
(También he probado esta variación:.
echo "<?xml version='1.0' encoding='UTF-8'?>";
en vano)
Sin embargo, esto siempre se da salida (en todos los navegadores, e incluso cuando se ve como un archivo descargado de wget
) como:
<?xml version=1.0 encoding=UTF-8 ?>
En alguna parte de la línea, se soltaron las comillas simples alrededor del número de versión y la codificación. ¿Dónde me equivoqué y qué puedo hacer para solucionarlo? Recibo errores de mi analizador y creo que es porque esta declaración no sigue el estándar XML de tener comillas simples o dobles alrededor de estos valores.
Eso es realmente extraño que PHP caería comillas, pero aun así se debe utilizar comillas dobles isntead de comillas simples para los documentos XML. – regality
Hmph. Sigue siendo el mismo resultado, pero supongo que tiene razón al utilizar comillas dobles. – esqew
Me parece que se está produciendo un postprocesamiento de salida. No tengo experiencia con eso, pero tal vez algo así como 'tidy.clean_output = On' en tu configuración' ini'? Parece poco probable que "Tidy" elimine las comillas en lugar de agregarlas, pero quién sabe. Quizás alguna herramienta similar de postprocesamiento esté configurada en la configuración de su servidor. (Ya se trate de postprocesamiento PHP, de postprocesamiento realizado por su servidor web). –