Сайт php не отображается правильно в utf-8 - PullRequest
2 голосов
/ 26 июля 2010

У меня есть веб-сайт, на котором есть некоторые нестандартные символы, такие как ë, Ç и т. Д.

Веб-сайт использует ISO-8859-1 в качестве кодировки символов, однако на данный момент я хочу переключить его на UTF-8 по некоторым причинам, связанным с каналами RSS.

Когда я изменяю кодировку символов на utf-8, упомянутые символы отображаются неправильно.

Я установил кодировку через функцию заголовка php:

header("Content-Type: text/html; charset=ISO-8859-1");

Есть идеи, как решить эту проблему?

Ответы [ 3 ]

1 голос
/ 26 июля 2010
header("Content-Type: text/html; charset=ISO-8859-1");

Итак, вы используете ISO-8859-1 или UTF-8?Этот заголовок сообщает браузеру: «Пожалуйста, предположите, что содержимое этого сайта закодировано в ISO-8859-1, и интерпретируйте его как таковой».Если содержимое сайта , а не на самом деле в этой кодировке, результат будет в некоторой степени бессмысленным.

Это говорит о том, что проблема в том, что на этикетке написаноне то, что в банке.

0 голосов
/ 26 июля 2010

Если вы храните эту информацию в базе данных, проверьте параметры сортировки базы данных, это также должен быть UTF-8.

0 голосов
/ 26 июля 2010

Никогда не слышал о сущностях? http://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references.

Иначе, вы должны перекодировать ваши файлы (с вашим редактором вы сможете сохранять файлы, указав кодировку).

Вы также можете сделать это с внешними программами, такими как iconv

iconv -f ISO-8859-1 -t utf8 your_file > your_new_file
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...