PHP en-tête xml en utf-8
Je suis en utilisant le header() fonction de transformer un fichier en XML standard.
Le problème est que lorsque j'utilise <?php header("Content-type: text/xml; charset=utf-8")
; ?> simplement, il rend le <?xml version="1.0"?>
, sans le enconding/charset. Suis-je en l'utilisant à tort?
OriginalL'auteur tenshimsm | 2011-03-06
Vous devez vous connecter pour publier un commentaire.
La
header()
fonction modifie les en-têtes HTTP. Le code que vous avez posté définit unContent-Type
en-tête, ce qui est important pour raconter les navigateurs et les autres clients de ce type de fichier que vous recherchez.La
<?xml version="1.0"?>
ligne que vous êtes en train de parler d'une partie du document lui-même, et n'est pas affectée par les en-têtes HTTP.Vos balises dire que vous êtes en utilisant DOM pour créer votre document XML. Si vous modifiez votre DomDocument constructeur de transmettre aussi le jeu de caractères,
Il devrait sortir que le jeu de caractères dans le document XML.
OriginalL'auteur John Flatness
header
ne fait qu'un en-tête HTTP dans le résultat. PHP n'est pas de faire autre chose avec la valeur, donc c'est à vous de vous assurer qu'il est correctement utilisé.Si vous utilisez une bibliothèque XML pour générer le XML (y compris le prologue), consultez la documentation de la bibliothèque. Si vous êtes à la sortie du XML "à la main" (o, vous devez ajouter l'attribut nécessaire pour le prologue vous-même.
OriginalL'auteur Michael Madsen
Vous pouvez également utiliser
OriginalL'auteur Sahan