下面整理了php識別中文編碼并自動轉換為UTF-8幾個例子,這些例子非常的不錯,希望對各位有幫助.
php自動識別編碼,若里面有中文的話,將其轉換為UTF-8就最好了,因為中文在Gbk編輯情況情況下,有可能會亂碼,這個和客戶端和服務端編碼都有關系,為了避免亂碼,我們可以使用下面的函數將其自動轉換為UTF8國際標準編碼,代碼如下:
- <?php
- function characet($data){
- if( !emptyempty($data) ){
- $fileType = mb_detect_encoding()($data , array('UTF-8','GBK','LATIN1','BIG5')) ;
- if( $fileType != 'UTF-8'){
- $data = mb_convert_encoding($data ,'utf-8' , $fileType);
- }//開源代碼Vevb.com
- }
- return $data;
- }
- ?>
補充:文件編碼轉換,代碼如下:
- $temstr=file_get_contents($path);
- $encode = mb_detect_encoding($temstr,"ASCII,UTF-8,CP936,EUC-CN,BIG-5,EUC-TW");
- $temstr=mb_convert_encoding($temstr, "CP936", $encode);
例子,代碼如下:
- <?php
- $f=fopen("test.txt", "wb");
- $text=utf8_encode("a!");
- //先用函數utf8_encode將所需寫入的數據變成UTF編碼格式。
- $text="\\xEF\\xBB\\xBF".$text;
- //開源代碼Vevb.com
- //"\\xEF\\xBB\\xBF",這串字符不可缺少,生成的文件將成為UTF-8格式,否則依然是ANSI格式。
- fputs($f, $text);
- //寫入。
- fclose($f);
- ?>
新聞熱點
疑難解答