mb_ereg 功能通过 Oniguruma RegEx 库提供,而不是通过 PCRE。mb_regex_encoding() 仅支持与 mb_list_encodings() 和 mb_encoding_aliases() 相比的编码名称子集。
当前支持以下名称(不区分大小写)
UCS-4
UCS-4LE
UTF-32
UTF-32BE
UTF-32LE
UTF-16
UTF-16BE
UTF-16LE
UTF-8
utf8
ASCII
US-ASCII
EUC-JP
eucJP
x-euc-jp
SJIS
eucJP-win
SJIS-win
CP932
MS932
Windows-31J
ISO-8859-1
ISO-8859-2
ISO-8859-3
ISO-8859-4
ISO-8859-5
ISO-8859-6
ISO-8859-7
ISO-8859-8
ISO-8859-9
ISO-8859-10
ISO-8859-13
ISO-8859-14
ISO-8859-15
ISO-8859-16
EUC-CN
EUC_CN
eucCN
gb2312
EUC-TW
EUC_TW
eucTW
BIG-5
CN-BIG5
BIG-FIVE
BIGFIVE
EUC-KR
EUC_KR
eucKR
KOI8-R
KOI8R
该列表是基本名称和别名的混合,适用于 PHP 5.4.45(Oniguruma 库 v4.7.1)、PHP 5.6.31(v5.9.5)、PHP 7.0.22(v5.9.6)和 PHP 7.1.8(v5.9.6)。请注意不一致:mb_regex_encoding() 接受例如基本名称“UTF-8”及其唯一的别名“utf8”,但它不接受别名“utf16”、“utf32”或“latin1”。
另外请注意,ISO/IEC 8859-15:1999(包括欧元符号在 0xA4 上)的非正式名称/别名“latin9”也不被 mb_list_encodings() 识别。它只能被识别为“ISO-8859-15”或“ISO_8859-15”,对于 mb_regex_encoding() 只能被识别为“ISO-8859-15”。