utf8_decode Преобразовывает строку из кодировки UTF-8 в кодировку ISO-8859-1, заменяя недопустимые или непредставимые символы &warn.deprecated.function-8-2-0; &reftitle.description; #[\Deprecated] stringutf8_decode stringstring Функция преобразовывает строку string из кодировки UTF-8 в кодировку ISO-8859-1. Байты в строке, которые не соответствуют корректным символам кодировки UTF-8 и UTF-8-символам, которые не содержатся в кодировке ISO-8859-1 — кодовые точки выше U+00FF, заменяются на символ ?. Часто веб-страницы, которые отметили как страницы в кодировке ISO-8859-1, кодируются похожей кодировкой — Windows-1252, и браузеры интерпретируют страницы в кодировке ISO-8859-1 как страницы в кодировке Windows-1252. Однако кодировка Windows-1252 вместо управляющих кодов кодировки ISO-8859-1 содержит дополнительные печатные символы наподобие знака евро € и английских двойных кавычек “ ”. Функция не конвертирует такие символы кодировки Windows-1252 корректно. Для конвертации в кодировку Windows-1252 пользуются альтернативными функциями. &reftitle.parameters; string Строка в кодировке UTF-8. &reftitle.returnvalues; Функция возвращает данные параметра string, которые преобразовала в кодировку ISO-8859-1. &reftitle.changelog; &Version; &Description; 8.2.0 Функция устарела. 7.2.0 Функцию перенесли из модуля XML в ядро PHP. В предыдущих версиях функция была доступна только при установленном модуле XML. &reftitle.examples; Простой пример преобразования строки из кодировки UTF-8 в кодировку ISO-8859-1 ]]> &example.outputs; &reftitle.notes; Устаревание и альтернативы Начиная с PHP 8.2.0 функция устарела и её удалят в будущей версии. Разработчики языка рекомендуют заменить вызовы функции в коде альтернативами. Аналогичную функциональность даёт функция mb_convert_encoding, которая поддерживает кодировку ISO-8859-1 и набор других кодировок символов. ]]> &example.outputs; Другие способы, доступность которых зависит от загруженных модулей, — метод UConverter::transcode и функция iconv. Каждый следующий способ даёт один и тот же результат: ]]> &example.outputs; Символ '?' как значение элемента 'to_subst' в массиве опций метода UConverter::transcode даёт тот же результат, что и функция utf8_decode для недопустимых строк или строк, которые невозможно представить в кодировке ISO 8859-1. '?'] ); var_dump($iso8859_1_string); ?> ]]> &example.outputs; &reftitle.seealso; utf8_encode mb_convert_encoding UConverter::transcode iconv