mb_detect_order()
(PHP 4 >= 4.0.6, PHP 5, PHP 7)
设置/获取字符编码的检测顺序
说明
mb_detect_order([mixed $encoding_list= mb_detect_order()]): mixed
为编码列表$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,编码检测总是会失败。
返回值
设置编码检测顺序时候,成功时返回TRUE
,识别时候返回FALSE
。
在获取编码检测顺序的时候,会返回排序过的编码数组。
范例
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()); ?>
案例展示了无效的检测顺序
; 总是检测为 ISO-8859-1 detect_order = ISO-8859-1, UTF-8 ; 总是检测为 UTF-8,由于 ASCII/UTF-7 的值对 UTF-8 是有效的 detect_order = UTF-8, ASCII, UTF-7
参见
mb_internal_encoding()
设置/获取内部字符编码mb_http_input()
检测 HTTP 输入字符编码mb_http_output()
设置/获取 HTTP 输出字符编码mb_send_mail()
发送编码过的邮件