日期:2014-05-17  浏览次数:20392 次

只有两种编码的情况下,请问我这个函数安全吗?
在只有gbk和utf-8两种编码的情况下,有下面这个函数判断编码格式是否安全呢?
PHP code

function checkEncoding($str)   
{ 
    $s = json_encode($str);
    $c = substr($s,0,7);
    if($c == '"\ufeff') return 'utf-8';
    return 'gbk';
} 




------解决方案--------------------
怎么可能这个是对的?
abcde0123456789在gbk 和 utf-8的情况下,字节代码是完全一样的
------解决方案--------------------
不安全,甚至notepad就有个bom头陷阱。

事实上,你采用任何方案都不会安全。
------解决方案--------------------
mb_check_encoding函数不行吗?
------解决方案--------------------
csdn做的够烂的,想编辑帖子都不行。
附上查到的一个连接:http://stackoverflow.com/questions/1037363/how-to-check-the-charset-of-string
------解决方案--------------------
探讨

csdn做的够烂的,想编辑帖子都不行。
附上查到的一个连接:http://stackoverflow.com/questions/1037363/how-to-check-the-charset-of-string