函式名稱:mb_detect_encoding()
適用版本:PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8
函式描述:mb_detect_encoding() 函式用於檢測字串的字元編碼。
用法: string mb_detect_encoding ( string $str [, mixed $encoding_list = mb_detect_order() [, bool $strict = FALSE ]] )
引數:
- $str:要檢測編碼的字串。
- $encoding_list(可選):一個以逗號分隔的字元編碼列表,用於指定要檢測的編碼。如果未提供該引數,則會使用內部設定的檢測順序。
- $strict(可選):一個布林值,指示是否啟用嚴格模式。如果啟用嚴格模式,則只返回完全匹配的編碼。
返回值: 如果找到匹配的編碼,則返回編碼名稱,否則返回 FALSE。
示例1:
$str = "Hello, world!";
$encoding = mb_detect_encoding($str);
echo "編碼為:" . $encoding;
輸出: 編碼為:ASCII
示例2:
$str = "你好,世界!";
$encoding = mb_detect_encoding($str, "UTF-8,GB2312");
echo "編碼為:" . $encoding;
輸出: 編碼為:UTF-8
示例3:
$str = "こんにちは、世界!";
$encoding = mb_detect_encoding($str, "SJIS,EUC-JP,UTF-8");
echo "編碼為:" . $encoding;
輸出: 編碼為:UTF-8
注意事項:
- 在使用該函式之前,需要確保 mbstring 擴充套件已經安裝並啟用。
- 如果未提供 $encoding_list 引數,則會使用 mb_detect_order() 函式返回的檢測順序。
- 如果設定了 $strict 引數為 TRUE,只有完全匹配的編碼才會被返回。否則,會返回最可能的編碼。
- 如果檢測到的編碼為 UTF-8,則可能是 UTF-8 或 ASCII 編碼,需要進一步驗證。
- 該函式僅用於檢測字串的編碼,不會對字串進行編碼轉換。
熱門工具排行榜