// // 测试文本是否是utf8编码 // // 返回值: // 1 - 有BOM头的内容 // 2 - 纯utf8的内容 // 3 - 较可能是utf8的内容 // 4 - 较不可能是utf8的内容 // function utf8_check($text) { $utf8_bom = chr(0xEF).chr(0xBB).chr(0xBF); // BOM头检查 if (strstr($text, $utf8_bom) === 0) return 1; $text_len = strlen($text); // UTF-8是一种变长字节编码方式。对于某一个字符的UTF-8编码,如果只有一个字节则其最高二进制位为0; // 如果是多字节,其第一个字节从最高位开始,连续的二进制位值为1的个数决定了其编码的位数,其余各字节均以10开头。 // UTF-8最多可用到6个字节。 // // 如表: // 0) { $c = ord($text[$i]); $c = ($c >> 6) $bad) return 3; else return 4; }
以上就介绍了 PHP中检测文件是否为UTF-8编码的函数,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。