我知道你是否需要在PHP中获取文件的字符编码
var_dump (mb_detect_encoding (file_get_contents ("somefile.txt")));
然而,使用大文件执行此操作并不是很实用,因为它占用了大量内存。
有没有办法可靠地确定字符编码而无需将整个文件读入内存?
答案 0 :(得分:0)
不,无需读取整个文件就无法可靠地确定字符编码。
原因:与ASCII不同的字符代码(仍然是许多编码的基础部分)随机分布在文件中。他们可能偶然会出现在你没读过的部分。
当然,从一开始就很容易识别某些编码,但这不是问题所在。
(让您有机会接受答案作为解决方案,尽管答案可能已在评论中给出,您不应该做什么(SO政策)。)
答案 1 :(得分:-1)
是的,你可以使用缓存, 你可以使用下面的功能,可以帮助你相同的
例如:
输出: string(6)“你好” string(11)“Hello World”
更多功能:
PHP_OUTPUT_HANDLER_CLEANABLE ob_clean(),ob_end_clean()和ob_get_clean()。 PHP_OUTPUT_HANDLER_FLUSHABLE ob_end_flush(),ob_flush()和ob_get_flush()。 PHP_OUTPUT_HANDLER_REMOVABLE ob_end_clean(),ob_end_flush()和ob_get_flush()。
了解更多信息,请访问:http://www.php.net/manual/en/function.ob-start.php