多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > 用PHP判斷文件是否是UTF-8編碼(檢查Bom)

用PHP判斷文件是否是UTF-8編碼(檢查Bom)

來源:程序員人生   發布時間:2014-01-22 03:55:34 閱讀次數:3203次

UTF-8編碼的文件分為帶Bom和不帶Bom兩種,帶Bom的大家都很容易處理,不帶Bom的會有點麻煩,所以寫了一個函數去判斷,代碼如下:

//返回 1 表示純 ASCII(即是所有字符都不大于127)
//返回 2 表示UTF8
//返回 0 表示正常gb編碼

function TestUtf8($text)
{
if(strlen($text) < 3) return false;
$lastch = 0;
$begin = 0;
$BOM = true;
$BOMchs = array(0xEF, 0xBB, 0xBF);
$good = 0;
$bad = 0;
$notAscii = 0;
for($i=0; $i < strlen($text); $i++)
{
$ch = ord($text[$i]);
if($begin < 3)
{
$BOM = ($BOMchs[$begin]==$ch);
$begin += 1;
continue;
}

if($begin==4 && $BOM) break;

if($ch >= 0x80 ) $notAscii++;

if( ($ch&0xC0) == 0x80 )
{
if( ($lastch&0xC0) == 0xC0 )
{
$good += 1;
}
else if( ($lastch&0x80) == 0 )
{
$bad += 1;
}
}
else if( ($lastch&0xC0) == 0xC0 )
{
$bad += 1;
}
$lastch = $ch;
}
if($begin == 4 && $BOM)
{
return 2;
}
else if($notAscii==0)
{
return 1;
}
else if ($good >= $bad )
{
return 2;
}
else
{
return 0;
}
}

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 福利精品一区 | 国产精品久草 | 日韩欧美精品一区二区三区 | 国产激情一区二区三区 | 中文字幕组 | 999国产精品亚洲77777 | 在线满18网站观看视频 | 国产精品久久久视频 | 激情图片小说区 | 一区二区三区在线看 | xxxxwww日本| 中文字幕日韩欧美 | 国内精品久久久久影院嫩草 | 亚洲自拍偷拍区 | 国产毛片视频网站 | 亚洲成人伊人网 | xxx欧美888| 在线观看视频网站www色 | 一级片免费 | 国产二区自拍 | 叼嘿视频免费看 | 羞羞免费网页登界面入口 | 国产在线播放不卡 | 最近免费中文字幕大全高清mv | 免费在线观看亚洲 | 国产高清精品久久久久久久 | 美国一级毛片在线观看 | 国产精品一区二区不卡 | 涩涩免费播放观看在线视频 | www.日本精品 | 亚洲www在线观看 | 亚洲天堂视频在线免费观看 | 亚洲国产欧美精品 | 国内精品91久久久久 | 欧美日韩国产片 | 精品国产高清不卡毛片 | 中文字幕亚洲欧美 | 日本japanesexxxx人妖2 | 亚洲色图 校园春色 | 日本高清www | 国产精品无码专区在线观看 |