Смена contentType с html на xml в кастом методе
Материал из Umicms
Для некоторых задач может понадобиться создать страницу на сайте, c которой сторонний софт сможет забрать данные в xml-формате. Для решения данной задачи будет создан кастомный метод, в котором будут формироваться необходимые данные в xml-формате. Метод будет запущен на странице сайта, но если в конце метода будут стоять строки:
echo $data_xml; exit;
то на странице будут отображены верные данные, но заголовок для страницы будет:
Content-Type: text/html
а необходимо:
Content-Type: text/xml
чтобы установить нужный Content-Type, итоговый вывод должен быть осуществлен следующим образом:
$buffer = outputBuffer::current(); $buffer->contentType('text/xml'); $buffer->clear(); $buffer->push($data_xml); $buffer->end();
Скорее всего сработает и данный способ:
header("Content-type: text/xml"); echo $data_xml; exit;
но первый вариант предпочтительней.
