您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關如何解決php讀取txt是亂碼的問題,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
php讀取txt是亂碼的解決辦法:首先使用“file_get_contents”函數把整個文件讀入一個字符串中;然后獲取文件的編碼方式;接著以只讀的方式打開文件;最后使用iconv將“$encoding”轉換成“UTF-8”即可。
PHP讀取TXT中文亂碼的解決方法
代碼如下:
//$fname文件名稱 if ($fname = $_FILES['nickname']['tmp_name']) { //file_get_contents() 函數把整個文件讀入一個字符串中。 $contents = file_get_contents($fname); //獲取文件的編碼方式 $encoding = mb_detect_encoding($contents, array('GB2312','GBK','UTF-16','UCS-2','UTF-8','BIG5','ASCII')); $fp=fopen($fname,"r");//以只讀的方式打開文件 $text = ""; $num = 0; if(!(feof($fp))) { $num++; $str = trim(fgets($fp)); if ($encoding != false) { //iconv ()將$encoding 轉換成“UTF-8” $str = iconv($encoding, 'UTF-8', $str); if ($str != "" and $str != NULL) { $text = $str; } } else { $str = mb_convert_encoding ( $str, 'UTF-8','Unicode'); if ($str != "" and $str != NULL) { $text = $str; } } } while(!(feof($fp))) { $str = ''; $str = trim(fgets($fp)); if ($encoding != false) { $str = iconv($encoding, 'UTF-8', $str); if ($str != "" and $str != NULL) { $text = $text.",".$str; } } else { $str = mb_convert_encoding ( $str, 'UTF-8','Unicode'); if ($str != "" and $str != NULL) { $text = $text.",".$str; } } } }
看完上述內容,你們對如何解決php讀取txt是亂碼的問題有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。