2011-05-31 4 views
2

Я новичок в PHP и XML.Включить кодировку XML в PHP

Может кто-нибудь сказать мне, как включить кодировку XML, когда я пишу новый XML-файл.

Вот коды:

writexml.php

<?php 
$ids = array("1", "2", "3", "4", "5"); 
$names = array("Jean Claude Van Damme", "Scott Adkins", "Dolph Ludgren", "Michael Jai White", "Michael Worth"); 

$domdoc = new DOMDocument(); 
$domdoc->formatOutput = true; 

$el_actionstars = $domdoc->createElement("actionstars"); 
$domdoc->appendChild($el_actionstars ); 

$arr_size = count($ids); 

for ($i=0; $i < $arr_size; $i++) { 
    $el_actionstar = $domdoc->createElement("actionstar"); 

    $el_id = $domdoc->createElement("id"); 
    $el_id->appendChild($domdoc->createTextNode($ids[$i] . "")); 
    $el_actionstar->appendChild($el_id); 

    $el_name = $domdoc->createElement("name"); 
    $el_name->appendChild($domdoc->createTextNode($names[$i] . "")); 
    $el_actionstar->appendChild($el_name); 


    $el_actionstars->appendChild($el_actionstar); 
} 

echo $domdoc->saveXML(); 
$domdoc->save("actionstars.xml") 
?> 

выход XML-это <?xml version="1.0"?>, и я хочу, чтобы добавить кодировку, чтобы сделать его похожим на <?xml version="1.0" encoding="ISO-8859-1"?>. Pls помочь ...

+0

[дубликата] (http://stackoverflow.com/questions/869650/getting-simplexmlelement-to-include-the-encoding-in-output) –

+0

Пример для [DOMDocument :: __ конструкта ] (http://de3.php.net/manual/en/domdocument.construct.php) показывает, как это сделать. Пожалуйста, обратитесь к руководству, прежде чем задавать вопросы с очевидными ответами. – Gordon

+0

Lol. Кто-то вводит больше любви ... – tofutim

ответ

4

см дна http://php.net/manual/en/domdocument.savexml.php

При сохранении документа целиком: Уровеньвыш> saveXML() производит строку в кодировке, определенной в свойстве Уровеньвыша> Кодировки.

Когда вы сохраняете только один узел: DOMDocument-> saveXML (DOMNode) производит всегда строку в UTF-8.

Вы можете установить его в конструкторе

DOMDocument::__construct ([ string $version [, string $encoding ]]) 

например,

$domdoc = new DOMDocument('1.0', 'iso-8859-1'); 
+0

Вы хотите сказать, когда я сохраню весь документ, я должен проверить DOMDocument-> encoding? –

+0

Просто создайте domdoc с нужной кодировкой. – tofutim

Смежные вопросы