PHP header voor xml met de utf-8

Ik ben met behulp van de header() functie in te schakelen van een bestand in XML-standaard.
Het probleem is wanneer ik <?php header("Content-type: text/xml; charset=utf-8"); ?> het maakt de <?xml version="1.0"?>, zonder de enconding/karakterset. Gebruik ik het verkeerd?

InformationsquelleAutor msmafra | 2011-03-06



3 Replies
  1. 13

    De header() functie slechts wijzigt HTTP-headers. De code die je op de hoogte stelt een Content-Type kop, die van belang is voor het vertellen van browsers en andere klanten wat voor type bestand dat u wilt serveren.

    De <?xml version="1.0"?> lijn waar je het over hebt is een onderdeel van het document zelf, en niet beïnvloed door de HTTP-headers.

    Uw tags zeggen dat je met DOM te maken van uw XML-document. Als u uw DomDocument constructor ook langs de karakterset,

    $doc = new DomDocument('1.0', 'UTF-8');

    Moet uitvoer charset in het XML-document.

    • Dank jullie BEIDEN. Ik was een beetje lui om te zoeken. Ik dacht iets als dat, maar ik was te lui om zelfs maar aan denken. :o)
  2. 2

    header slechts stelt een HTTP-header in het resultaat. PHP doet niets anders met de waarde, dus het is aan u ervoor te zorgen dat het goed wordt gebruikt.

    Als u een XML-bibliotheek voor het genereren van uw XML-bestand (inclusief de proloog), controleert u de documentatie voor die bibliotheek. Als je het uitvoeren van de XML – “met de hand” (o, moet u het noodzakelijk attribuut van de proloog zelf.

    • Dank u. Ik was een beetje lui om te zoeken. Ik dacht iets als dat, maar ik was te lui om zelfs maar aan denken. :o)
  3. 0

    U kunt ook gebruik maken van

    <?php echo '<?xml version"1.0" encoding="UTF-8"?>'; ?>
    • Leg uit waarom dit werkt.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *