У меня есть XML-канал, который я создал с помощью XMLWriter
. Он работает безупречно в dev на брандмаутере PHP 5.6. На живом сервере работает PHP 5.4 фид не может сделать с сообщением:Разрывы строк в PHP xmlwriter document
This page contains the following errors:
error on line 3 at column 6: XML declaration allowed only at the start of the document
При просмотре источника он выглядит следующим образом:
Как-то пара строк добавляется в XML-документ. Единственная разница между серверами - это версия PHP (насколько я знаю).
Вот первые несколько строк кода XMLWriter:
$xml = new XMLWriter();
$xml->openURI('php://output');
$xml->startDocument("1.0");
$xml->setIndent(true);
$xml->startElement("propertyList");
$xml->writeAttribute('date', date('Y-m-d-H:i:s'));
Любые идеи, как это обойти?
Это не код, который вы опубликовали :) - И для различий между двумя серверами сравнить ini-settings, например, о буферизации вывода, файлах-подписях и т. Д. И у вас есть код под управлением версии ? – hakre
Если файлы XML, которые вы генерируете, не являются огромными, вы всегда можете поместить вывод в строку и trim(), прежде чем сохранять его на диск. – GordonM