Как сменить кодировку с UTF-8 на кириллицу

Майор

Администратор
Команда форума
Регистрация
04.09.14
Сообщения
2.837
Реакции
1.942
Баллы
113
Чтобы поменять кодировку страницы, напимер с UTF-8 на windows-1251(кириллицу), можно использовать несколько способов. Для всех надо использовать текстовый редактор Notepad++, или любой подобный.
Споб первый, самый простой, но не всегда действенный. Открыть нужную Вам страницу HTML или PHP и проделать следующее. В верху страницы, между тегами <head> и </head> заменить в строке :

HTML:
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
кодировку с utf-8 на windows-1251 так:

HTML:
<meta http-equiv="content-type" content="text/html; charset=windows-1251"/>

Дальше выделяем весь код в странице и открываем в Notepad++ вкладку вверху "кодировки"-->еще "кодировки"--> кириллица-->Windows-1251. Смотрим, что получилось.
2012-03-31_223658.jpg


Так же иногда нужно преобразовать UTF-8 в UTF-8 без BОМ, Обратите внимание, что кодировки UTF-8 и UTF-8 без БОМ это, в принципе, очень разные вещи.
 

mychatik

Support
Команда форума
Регистрация
26.05.15
Сообщения
482
Реакции
389
Баллы
63
Веб-сайт
mychatik.ru
Попробовал поиграться с кодировками на форуме phpBB3. Ничего хорошего из этого не вышло.
RU-файлы этого форума в кодировке UTF-8, а сервер, как нужно для чата, для чата - windows-1251. В итоге, файлы через Total Commander открываются для редактирования в виде кракозябров.
Через Notepad++ получилось сменить кодировку RU-файлов на windows-1251. Файл стал читаемым. Вроде бы крастота! Но, после редактирования и загрузки, на форуме все русские буквы сменились на вопросительные знаки.
Замена кодировки в meta-тегах не помогла.
В итоге плюнул на перекодировку. Отредактировал файл через Notepad++ и загрузил его, как и было в UTF-8. Всё работает нормально.
 

mychatik

Support
Команда форума
Регистрация
26.05.15
Сообщения
482
Реакции
389
Баллы
63
Веб-сайт
mychatik.ru
Кстати, если нужно перекодировать одну строку, или переменную (например при выводе названий песен - когда русские буквы пишет кракозябрами), то очень удобно пользоваться функцией iconv().
Например, UTF-8 в cp1251:
PHP:
$text = iconv("UTF-8", "cp1251", $text);
И наоборот:
PHP:
$text = iconv("cp1251", "UTF-8", $text);
Таким образом можно перекодировать из любой кодировки в любую необходимую.
 
Сверху Снизу