原理很簡單,因為gb2312/gb程式設計客棧k是中文兩位元組,這兩個位元組是有取值範圍的,而utf-8中漢字是三位元組,同樣每個位元組也有取值範圍。而英文不 管在何種編碼情況下,都是小於128,只占用乙個位元組(全形除外)。
如果是檔案形式的編碼檢查,還可以直接check utf-8的bom資訊。話不多說,直接上函式,這個函式是用來對字串進行檢查和轉碼的。
複製** **如下:
phpfunction safeencoding($string,$outencoding ='utf-8')
)<128)
continue;
if((ord($string)&224)==224)
;
if((ord($char)&128)==128)
;
if((ord($char)&128)==128)
}
}
&nbswww.cppcns.comp;if((ord($string)&192)==192)
;
if((ord($char)&128)==128)
}
}
if(strtoupper($encoding) == strtoupper($outencoding))
return $string;
else
return iconv($encoding,$outencoding,$string); 程式設計客棧
}?>
本文標題: 關於php自動判斷字符集並轉碼的詳解
本文位址:
PHP自動判斷字符集並轉碼的詳解
php自動判斷字符集並轉碼的例項參考。原理 因為gb2312 gbk是中文兩位元組,這兩個位元組是有取值範圍的,而utf 8中漢字是三位元組,同樣每個位元組也有取值範圍。而英文不 管在何種編碼情況下,都是小於128,只占用乙個位元組 全形除外 如果是檔案形式的編碼檢查,還可以直接check utf ...
PHP判斷字符集並轉碼的函式
function safeencoding string,outencoding utf 8 encoding utf 8 for i 0 i 原理很簡單,因為gb2312 gbk是中文兩位元組,這兩個位元組是有取值範圍的,而utf 8中漢字是三位元組,同樣每個位元組也有取值範圍。而英文不 管在何種...
PHP判斷字符集並轉碼的函式
function safeencoding string,outencoding utf 8 encoding utf 8 for i 0 i 原理很簡單,因為gb2312 gbk是中文兩位元組,這兩個位元組是有取值範圍的,而utf 8中漢字是三位元組,同樣每個位元組也有取值範圍。而英文不 管在何種...