= 4.0.6, PHP 5, PHP 7, PHP 8)mb_detect_order — 設(shè)置/獲取 字符編碼的檢測(cè)順序說(shuō)明mb_detect_order(mixed $encoding_list = mb_detect_order()): mixe">

mb_detect_order

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

mb_detect_order設(shè)置/獲取 字符編碼的檢測(cè)順序

說(shuō)明

mb_detect_order(mixed $encoding_list = mb_detect_order()): mixed

為編碼列表 encoding_list 設(shè)置自動(dòng)檢測(cè)字符編碼的順序。

參數(shù)

encoding_list

encoding_list 是一個(gè) array 或者逗號(hào)分隔的字符編碼列表。 參見(jiàn)支持的編碼。

如果省略了 encoding_list 參數(shù),它將返回當(dāng)前字符編碼檢測(cè)順序的數(shù)組。

該設(shè)置會(huì)影響 mb_detect_encoding()mb_send_mail()。

mbstring 當(dāng)前實(shí)現(xiàn)了以下編碼檢測(cè)篩選器。 如有以下編碼列表的無(wú)效字節(jié)序列,編碼的檢測(cè)將會(huì)失敗。

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

對(duì)于 ISO-8859-*,mbstring 總是檢測(cè)為 ISO-8859-*

對(duì)于 UTF-16、UTF-32、 UCS2UCS4,編碼檢測(cè)總是會(huì)失敗。

返回值

設(shè)置編碼檢測(cè)順序時(shí)候,成功時(shí)返回 true,識(shí)別時(shí)候返回 false

在獲取編碼檢測(cè)順序的時(shí)候,會(huì)返回排序過(guò)的編碼數(shù)組。

范例

示例 #1 mb_detect_order() 例子

<?php
/* 為檢測(cè)順序設(shè)置枚舉列表 */
mb_detect_order("eucjp-win,sjis-win,UTF-8");

/* 通過(guò)數(shù)組設(shè)置檢測(cè)順序 */
$ary[] = "ASCII";
$ary[] = "JIS";
$ary[] = "EUC-JP";
mb_detect_order($ary);

/* 顯示當(dāng)前的檢測(cè)順序 */
echo implode(", "mb_detect_order());
?>

示例 #2 案例展示了無(wú)效的檢測(cè)順序

; 總是檢測(cè)為 ISO-8859-1
detect_order = ISO-8859-1, UTF-8

; 總是檢測(cè)為 UTF-8,由于 ASCII/UTF-7 的值對(duì)  UTF-8 是有效的
detect_order = UTF-8, ASCII, UTF-7

參見(jiàn)