Я использую следующий код для получения XML-файла при вызове php-страницы:
т.е. когда вы вводите http://example.com/strtoxmp.php
, он вернет вам xml , основываясь на следующей кодировке:
$xml = new SimpleXMLElement("<feed/>"); $feed = $xml; $feed->addChild('resultLength', "1"); $feed->addChild('endIndex', "1"); $item = $feed->addChild('item',""); $item->addChild('contentId', "10031"); $item->addChild('contentType', "Talk"); $item->addChild('synopsis', "$newTitle" ); $item->addChild('runtime', ' '); } Header('Content-type: text/xml; charset:UTF-8; '); print($xml->asXML());
и он работает нормально. Он создает следующий xml:
<?xml version="1.0"?> <feed> <resultLength>1</resultLength> <endIndex>1</endIndex> <contentId>10031</contentId> <contentType>Talk</contentType> <synopsis>Mark Harris - Find Your Wings</synopsis> <runtime> </runtime> </item> </feed>
Но мне нужно
<? xml version = "1.0" encoding = "UTF-8" standalone = "yes"?>
вместо
<? xml version = "1.0"?>
Чтобы задать объявление XML, просто добавьте его в строку, переданную в конструктор SimpleXMLElement:
$xml = new SimpleXMLElement('<?xml version="1.0" encoding="UTF-8" ' . 'standalone="yes"?><feed/>');
Это должно вывести следующее:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <feed/>