На странице произошла ошибка #S51. Свяжитесь с вебмастером. PHP 5.6 и PHP 7 на русском: Функция mb_detect_order() - Установка/получение списка кодировок для механизмов определения кодировки

mb_detect_order

(PHP 4 >= 4.0.6, PHP 5)

mb_detect_order Установка/получение списка кодировок для механизмов определения кодировки

Описание

mixed mb_detect_order ([ mixed $encoding_list ] )

Задает список кодировок encoding_list для механизмов автоматического определения кодировок в строках.

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

encoding_list

encoding_list - массив array или строка, в которой перечислены кодировки через запятую. См. Поддерживаемые кодировки.

Если encoding_list опущен, функция вернет текущий список кодировок в виде массива.

Эта настройка влияет на работу функций mb_detect_encoding() и mb_send_mail().

В mbstring на данный момент реализованы следующие фильтры для определения кодировок. Если последовательность байт в исходной строке не будет соответствовать ни одной из перечисленных кодировок, определение кодировки завершится неудачей.

UTF-8, UTF-7, ASCII, EUC-JP,SJIS, eucJP-win, SJIS-win, JIS, ISO-2022-JP

Кодировку ISO-8859-*, mbstring всегда определяет как ISO-8859-*.

Для кодировок UTF-16, UTF-32, UCS2 и UCS4, автоматическое определение всегда будет завершаться неудачей.

Пример #1 Пример бесполезных списков

; Всегда будет определять кодировку ISO-8859-1
detect_order = ISO-8859-1, UTF-8

; Всегда будет определять кодировку UTF-8, так как значения ASCII/UTF-7 
; допустимы в UTF-8
detect_order = UTF-8, ASCII, UTF-7

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

Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.

Примеры

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

<?php
/* Задание списка кодировок в виде упорядоченного списка*/
mb_detect_order("eucjp-win,sjis-win,UTF-8");

/* Задание списка кодировок в виде массива */
$ary[] = "ASCII";
$ary[] = "JIS";
$ary[] = "EUC-JP";
mb_detect_order($ary);

/* Вывод текущего списка кодировок */
echo implode(", "mb_detect_order());
?>

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

  • mb_internal_encoding() - Установка/получение внутренней кодировки скрипта
  • mb_http_input() - Определение кодировки символов входных данных HTTP-запроса
  • mb_http_output() - Установка/получение кодировки символов HTTP вывода
  • mb_send_mail() - Отправка закодированного сообщения

Коментарии

Автор:
Perhaps obvious to most everyone, but the 
default filter list was shorter than I expected:
['ASCII','UTF-8'], in that order.

c. 2024, 60% of websites globally declared charset 'UTF-8'
So if you're experimenting with multibyte encodings other than UTF-8, you have to specify your detect_order, choosing from the list of implemented filters.
2024-02-15 20:43:24
http://php5.kiev.ua/manual/ru/function.mb-detect-order.html

    Поддержать сайт на родительском проекте КГБ