iconv

(PHP 4 >= 4.0.5, PHP 5, PHP 7, PHP 8)

iconvПреобразовывает строку из одной кодировки символов в другую

Описание

iconv(string $from_encoding, string $to_encoding, string $string): string|false

Преобразовывает строку string из кодировки from_encoding в кодировку to_encoding.

Список параметров

from_encoding

Текущая кодировка, используемая для интерпретации параметра string.

to_encoding

Требуемая на выходе кодировка.

Если к параметру to_encoding добавлена строка //TRANSLIT, включается режим транслитерации. Это значит, что в случае, если символ не может быть представлен в требуемой кодировке, он может быть заменён одним или несколькими похожими символами. Если добавлена строка //IGNORE, то символы, которые не могут быть представлены в требуемой кодировке, будут удалены. В случае отсутствия вышеуказанных параметров будет сгенерирована ошибка уровня E_NOTICE, а функция вернёт false.

Предостережение

Как будет работать //TRANSLIT и будет ли вообще, зависит от системной реализации iconv() (ICONV_IMPL). Известны некоторые реализации, которые просто игнорируют //TRANSLIT, так что конвертация для символов некорректных для to_encoding скорее всего закончится ошибкой.

string

Строка (string) для преобразования.

Возвращаемые значения

Возвращает преобразованную строку или false, если возникла ошибка.

Примеры

Пример #1 Пример использования iconv()

<?php
$text
= "Это символ евро - '€'.";

echo
'Исходная строка : ', $text, PHP_EOL;
echo
'С добавлением TRANSLIT : ', iconv("UTF-8", "ISO-8859-1//TRANSLIT", $text), PHP_EOL;
echo
'С добавлением IGNORE : ', iconv("UTF-8", "ISO-8859-1//IGNORE", $text), PHP_EOL;
echo
'Обычное преобразование : ', iconv("UTF-8", "ISO-8859-1", $text), PHP_EOL;

?>

Вывод приведённого примера будет похож на:

Исходная строка        : Это символ евро - '€'.
С добавлением TRANSLIT : Это символ евро - 'EUR'.
С добавлением IGNORE   :Это символ евро - ''.
Обычное преобразование :
Notice: iconv(): Detected an illegal character in input string in .\iconv-example.php on line 7

Примечания

Замечание:

Доступные кодировки и опции зависят от установленной реализации iconv. Если параметр from_encoding или from_encoding не поддерживается в текущей системе, будет возвращено значение false.

Смотрите также

  • mb_convert_encoding() - Преобразовывает строку из одной кодировки символов в другую
  • UConverter::transcode() - Преобразовывает строку из одной кодировки символов в другую