Существует несоответствие между кодировкой символов вашего XML и тем, что вы выводите из PHP.Скорее всего, один - UTF-8, а другой - ISO-8859.
На стороне PHP вы можете установить это с помощью директивы заголовка
<?php
header('Content-Type: text/plain; charset=ISO-8859-1');
header('Content-Type: text/plain; charset=utf-8');
?>
и / или в выведенном HTML
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
На стороне XML большинство качественных текстовых редакторов позволяют указывать кодировку символов при сохранении файла.(Например, WordWrangler на Mac)
Если XML-файл действительно находится в ISO-8859, вы можете использовать utf8_encode()
, чтобы преобразовать его в UTF-8 во время чтения.
Углубленное обсуждение PHP и кодировки символов .