Sto usando PHP per generare XML personalizzati in base ai valori memorizzati in un database MySQL. Ho il seguente all'inizio della condizione:La dichiarazione XML non sta funzionando bene con PHP
echo '<?xml version="1.0" encoding="UTF-8"?>';
(Ho anche provato questa variante:.
echo "<?xml version='1.0' encoding='UTF-8'?>";
inutilmente)
Tuttavia, questo sarà sempre trasmesso (in tutti i browser e anche se visti come un file scaricato da wget
) come:
<?xml version=1.0 encoding=UTF-8 ?>
Da qualche parte lungo la linea, le virgolette singole intorno al numero di versione e alla codifica sono state eliminate. Dove ho sbagliato e cosa posso fare per risolvere questo problema? Sto ricevendo errori dal mio parser e credo che sia perché questa dichiarazione non sta seguendo lo standard XML di avere virgolette singole o doppie attorno a questi valori.
che è davvero bizzarro che PHP scenderebbe citazioni, ma anche così si dovrebbe usare le virgolette isntead di virgolette singole per i documenti XML. – regality
Hmph. Ancora lo stesso risultato, ma immagino tu abbia ragione nell'utilizzare le virgolette. – esqew
Mi sembra che si stia verificando una post-elaborazione degli output. Non ho esperienza con esso, ma forse qualcosa come 'tidy.clean_output = On' nelle tue impostazioni' ini'? Sembra improbabile che 'Tidy' rimuova le virgolette invece di aggiungerle, ma chi lo sa. Forse alcuni strumenti di post-elaborazione simili sono configurati sulla configurazione del tuo server. (Che si tratti di post-elaborazione PHP, di post-elaborazione eseguita dal tuo server web). –