エンコーディングが 2 つしかない場合、この関数は安全ですか?
エンコーディングが gbk と utf-8 の 2 つしかない場合、そのエンコーディング形式が安全かどうかを判断する次の関数はありますか?
PHP コード
<!--
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 の場合、バイトコードは全く同じです
------解決策------------------安全ではありません。メモ帳にも爆弾トラップがあります。
実際、採用するソリューションはどれも安全ではありません。
------解決策---------mb_check_encoding 関数が機能していませんか?
------解決策---------csdn は十分に悪いので、投稿を編集したいどちらも機能しません。
見つかったリンクを添付します: http://stackoverflow.com/questions/1037363/how-to-check-the-charset-of-string
------解決策---------