Работа с UTF-8 в PHP

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

Напоминаю, что всё-таки это не самый прямой путь. Для начала попробуйте использовать Iconv, если он установлен на вашем сервере.

$title = iconv("ISO-8859-1","utf-8",$title); // из ISO в UTF.

скачать PHP скрипт detect_utf
Функция для обнаружения того, что строка закодирвана UTF-8 (бинарно). Возвращает true если UTF-8 или false если ASCII.

скачать PHP скрипт unicod
Функция для перекодирования строки CP1251 в UNICODE. Для экономии размера заменяет одинаковые по начертанию символы кириллицы на символы латиницы (чтобы сэкономить — вместо «&x0430» («а» рус.) рисует «a» («a» eng.))

скачать PHP скрипт win_utf8
Перекодировка win1251 -> unicode (UTF-8)
То же самое, только без экономии места.

скачать PHP скрипт utf8_win
Функция для перекодировки unicode UTF-8 -> win1251.

скачать PHP скрипт utf8win
Конвертация строки в Win-1251, если она закодирвана UTF. Например — (&[#]x041C;&[#]x0435;&[#]x043B;) . Иногда ошибается. Кавычки — чтобы WP не дешифровал.

скачать PHP скрипт utf16win
Конвертация строки в Win-1251,если она закодирвана UTF. Например — (%u041C%u0435%u043B). Иногда ошибается.

скачать PHP скрипт win2utf
Конвертирует Win1251 -> unicode (не UTF-8).

TheRabbit
Написано 10 августа 2007 года в 12:02

Хорошая подборка! Очень часто требуется…

Павел Воронин
Написано 10 августа 2007 года в 13:15

Да-да. Замечательно! Бывают ступоры по поводу перевода из одной кодировки в другую.

BrokenBrake
Написано 10 августа 2007 года в 14:40

Очень полезно! Спасибо.

Жилинcкий Владимир
Написано 10 августа 2007 года в 14:41

Спасибо :-)

Жилинcкий Владимир
Написано 10 августа 2007 года в 14:42

Бывают. Кстати, иногда проще взять Notepad++ и поколдовать с ним на готовом тексте, а потом уже засунуть его в скрипт или в базу — на порядок проще выходит =)

Жилинcкий Владимир
Написано 10 августа 2007 года в 14:42

Радстараццо ;-)

Павел Воронин
Написано 10 августа 2007 года в 14:48

Scite предпочитаю. А вообще это не суть важно — чаще действительно легче воспользоваться софтом, нежели проводить динамические преобразования кодировок.

Жилинcкий Владимир
Написано 10 августа 2007 года в 14:49

В точку ;-)

kosiasik
Написано 10 августа 2007 года в 20:20

Одна из самых полезных функций отсутствует напроч. Я говорю, про wordwrap для utf, к сожалению всё известные мне функции работают плохо.

BrokenBrake
Написано 10 августа 2007 года в 20:21

Да, кстати! Еще Юлик очень много писал о PHP и UTF-8. Когда-то мне его материалы очень помогли. Смотрите его статью «Unicode и PHP«.

Жилинcкий Владимир
Написано 10 августа 2007 года в 20:36

Толково, весьма. Спасибо!

GTAlex
Написано 30 августа 2007 года в 07:05

Весьма полезная подборочка.

den_rad@livejournal
Написано 1 сентября 2007 года в 16:02

Я пользуюсь iconv, сейчас он стоит почти на всех хостингах

Виталий
Написано 4 сентября 2007 года в 13:05

Супер подборка :) ! В закладки по любому :) !

nik
Написано 26 сентября 2007 года в 07:22

зачёт!!!

реально помогло.

Алексей Журавлев
Написано 26 сентября 2007 года в 08:43

Спасибо за подборку. Выручила

Butcher
Написано 10 октября 2007 года в 18:23

огромное спасибо!!! я пару дней мудохался с этим UTF’ом!

xodarap_msk@livejournal
Написано 17 октября 2007 года в 21:53

Спасибо большое.. и правда.. очень полезно.. две функции мне уже помогли..:)

Vahan
Написано 21 октября 2007 года в 08:11

А что делать с кавычками, если использую функцию utf8_win? У меня с кавычками проблема, т.е. например «Стрелы Ориона» превращается в [Стрелы Орионаk. Я вынужден динамически конверитровать, поскольку информацию динамически загружаю с XML. Помогите разобратся к кавычками. Заранее спасибо.

Штормов.ру
Написано 10 мая 2008 года в 00:00

[…] Частично помогали скрипты Жилинского, они преобразовывали кодировку и на сайте этот текст был читаем… […]

© 2007-2026 Блог разработчика, страница об авторе.