Heim >Backend-Entwicklung >PHP-Tutorial > 只有两种编码的情况上,请教小弟我这个函数安全吗

只有两种编码的情况上,请教小弟我这个函数安全吗

WBOY
WBOYOriginal
2016-06-13 13:09:46744Durchsuche

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

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
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
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn