在PHP中,可以先使用mb_detect_encoding()函式取得字元的原有編碼;然後使用“mb_convert_encoding("指定的字元", "UTF-8", "字元原有的編碼")”來將字符的編碼轉為utf8。
本教學操作環境:windows7系統、PHP7.1版,DELL G3電腦
php轉換字元編碼為utf8
function strToUtf8($str){ $encode = mb_detect_encoding($str, array("ASCII",'UTF-8',"GB2312","GBK",'BIG5')); if($encode == 'UTF-8'){ return $str; }else{ return mb_convert_encoding($str, 'UTF-8', $encode); } }
說明:
mb_detect_encoding()函數用於偵測字元的編碼。
mb_detect_encoding ( string $str , mixed $encoding_list = mb_detect_order())
str:待檢查的字串。
encoding_list:是一個字元編碼清單。編碼順序可以由數組或逗號分隔的列表字串指定。
【推薦學習:《PHP影片教學》】
mb_convert_encoding()函數轉換字元的編碼
mb_convert_encoding ( string str, string to_encoding [, mixed from_encoding] )
string str 需要編碼轉換的字串;
string to_encoding 指定轉換為某種編碼,如:gb2312、gbk、utf-8等;
範例:
1、把GBK 編碼字符串轉換成UTF-8 編碼字符串;
<?php header("content-Type: text/html; charset=Utf-8"); echo mb_convert_encoding("你是我的好朋友", "UTF-8", "GBK"); ?>
2、把UTF-8 編碼字符串轉換成GB2312 編碼字符串
// 注意将此文件存盘成 utf-8 编码格式文件再测试 <?php header("content-Type: text/html; charset=gb2312"); echo mb_convert_encoding("你是我的好朋友", "gb312", "utf-8");
更多程式相關知識,請造訪:程式設計影片! !
以上是php怎麼轉換字符編碼為utf8的詳細內容。更多資訊請關注PHP中文網其他相關文章!