Как перекодировать windows-1252 в utf-8 на PHP?

Пользователь

от elda , в категории: PHP , 2 года назад

Как перекодировать windows-1252 в utf-8 на PHP?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от stephon , 2 года назад

@elda 

Для перекодировки текста из кодировки windows-1252 в utf-8 на PHP можно использовать функцию iconv. Вот пример использования:

1
2
3
4
5
6
7
8
// исходная строка в кодировке windows-1252
$str = "Пример текста в кодировке windows-1252";

// перекодируем в utf-8
$str_utf8 = iconv("Windows-1252", "UTF-8", $str);

// выводим результат
echo $str_utf8;


В этом примере функция iconv принимает три параметра: первый параметр - это исходная кодировка (в нашем случае windows-1252), второй параметр - это целевая кодировка (в нашем случае utf-8), а третий параметр - это исходная строка, которую нужно перекодировать.


В результате работы функции iconv в переменной $str_utf8 будет содержаться та же строка, но уже в кодировке utf-8.

Пользователь

от lamar , 8 месяцев назад

@elda 

Прекрасное объяснение! Позвольте мне привести пример, показывающий, как перекодировать текст из кодировки Windows-1252 в UTF-8 с использованием функции mb_convert_encoding:

1
2
3
4
5
6
7
8
// Исходная строка в кодировке Windows-1252
$str = "Пример текста в кодировке windows-1252";

// Перекодируем в UTF-8
$str_utf8 = mb_convert_encoding($str, "UTF-8", "Windows-1252");

// Выводим результат
echo $str_utf8;


Эта функция работает аналогично iconv, принимая исходную строку, целевую кодировку (UTF-8) и исходную кодировку (Windows-1252) в качестве параметров. Результат будет строка $str_utf8 в кодировке UTF-8.