Проблема с кодировкой Zend_Config_XML - PullRequest
0 голосов
/ 21 октября 2010

Я создаю XML-навигацию для моего сайта. Эта строка ниже вызывает проблему simpleXML:

<label>Osnabr&Atilde;&frac14;ck</label>

Мой PHP-код с использованием HTMLentities изменил Osnabrück на Osnabrück. Однако при попытке проанализировать мой XML с этой строкой, я получаю эту ошибку:

/application/configs/navigation.xml:318: parser error : Entity 'Atilde' not defined simplexml_load_file()

Разве я не должен использовать htmlentities ()? Или я пропускаю какие-то настройки?

С уважением

Steve

Ответы [ 2 ]

1 голос
/ 21 октября 2010

Вы не должны использовать HTML-сущности в XML.Использование нормальных символов UTF-8 должно быть в порядке.

Вхождение Osnabrück означает, что в некоторый момент, скорее всего, название города обрабатывается как ISO-8859-1 вместо UTF-8.Это не ошибка htmlentities().Вам нужно найти эту точку и исправить ее.

0 голосов
/ 22 октября 2010

Вы можете использовать функцию iconv () для динамического преобразования в utf-8.

iconv("ISO-8859-1", "UTF-8", $text);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...