⑴ php用fgets函數讀取文件txt內容並輸出 漢字顯示亂碼
這個好像不是亂碼。。。
好像是你的電腦沒有安裝這個字元集似的。。。
我以前用Linux的時候,安裝的是英文版,瀏覽有中文的文檔時就是這個樣子。
⑵ PHP寫入到文本文件亂碼
php處理中文編碼老是有問題,這是編碼的問題,可以將txt文件另存為UTF-8的編碼再處理;
參考如下:
functionfile_utf8($filepath){
$f_contents=file_get_contents($filepath);
$encoding=mb_detect_encoding($f_contents,array('GB2312','GBK','UTF-16','UCS-2','UTF-8','BIG5','ASCII'));
$content_u="";
$handle=fopen($filepath,"r");
if($handle){
while(!feof($handle)){
$buffer=fgets($handle);
if($encoding!=false){
if(mb_detect_encoding($buffer)!='UTF-8'){
$buffer=iconv($encoding,'UTF-8',$buffer);
}
}else{
$buffer=mb_convert_encoding($buffer,'UTF-8','Unicode');
}
$content_u.=$buffer;
}
fclose($handle);
return$info=array('status'=>1,'message'=>$content_u);
}else{
return$info=array('status'=>0,'message'=>'打開文件失敗');
}
}