Кодировка UTF-8 xml в PHP - PullRequest
       2

Кодировка UTF-8 xml в PHP

9 голосов
/ 12 ноября 2010

Я пытаюсь вывести XML с помощью PHP, и когда я смотрю на исходный код страницы в Firefox, все выглядит нормально. Однако сама страница не отображается должным образом.

В Firefox он обычно говорит это вверху страницы, когда показывает правильно отформатированный XML:

This XML file does not appear to have any style information associated with it. The document tree is shown below.

.. а затем он показывает дерево xml.

Тем не менее, я просто получаю символы внутри тегов xml, а не дерево.

Единственное отличие, которое я вижу, состоит в том, что моя страница кодируется как Western ISO-8859-1, а правильно отображаемый XML-код - как Unicode UTF-8. Так как бы мне вывести свою страницу в формате Unicode UTF8?

Я пробовал это, но это не имеет никакого значения:

echo utf8_encode($xmlstring);

1 Ответ

10 голосов
/ 12 ноября 2010

Убедитесь, что вы отправляете XML с соответствующим типом содержимого и кодировкой, например,

<?php header("Content-Type: application/xml; charset=utf-8"); ?>

Также убедитесь, что пролог XML содержит правильную кодировку, например,

<?xml version="1.0" encoding="UTF-8"?>

Сообщение об информации о стиле относится к отсутствующей инструкции обработки, например,

<?xml-stylesheet type="text/xsl" href="someting"?>

, который скажет браузеру, как стилизовать / отформатировать вывод. Это необязательно, если вы просто хотите отобразить необработанный XML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...