導航:首頁 > 編程語言 > php寫入TXT文件亂碼

php寫入TXT文件亂碼

發布時間:2022-05-26 07:14:38

php 讀取 gbk txt文檔, utf8 輸出亂碼

首先要保證整個php文件是utf-8的格式

//最好寫上去,因為這也可能是頁面沒有設置字元集
echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';

//獲得字元串之後馬上把字元串轉成另一種編碼
$content = file_get_contents("800.txt");
$content = mb_convert_encoding($content, 'utf-8', 'gbk');

㈡ PHP用file_put_contents修改txt文本里數據,修改後裡面數據怎麼是亂碼的怎麼解決

可能編碼沒有設置對,改成utf8或者gbk試試。

㈢ php讀取txt文本輸出時亂碼如何解決

$text = file_get_contents($filePath);
//$encodType = mb_detect_encoding($text);
define('UTF32_BIG_ENDIAN_BOM', chr(0x00) . chr(0x00) . chr(0xFE) . chr(0xFF));
define('UTF32_LITTLE_ENDIAN_BOM', chr(0xFF) . chr(0xFE) . chr(0x00) . chr(0x00));
define('UTF16_BIG_ENDIAN_BOM', chr(0xFE) . chr(0xFF));
define('UTF16_LITTLE_ENDIAN_BOM', chr(0xFF) . chr(0xFE));
define('UTF8_BOM', chr(0xEF) . chr(0xBB) . chr(0xBF));
$first2 = substr($text, 0, 2);
$first3 = substr($text, 0, 3);
$first4 = substr($text, 0, 3);
$encodType = "";
if ($first3 == UTF8_BOM)
$encodType = 'UTF-8 BOM';
else if ($first4 == UTF32_BIG_ENDIAN_BOM)
$encodType = 'UTF-32BE';
else if ($first4 == UTF32_LITTLE_ENDIAN_BOM)
$encodType = 'UTF-32LE';
else if ($first2 == UTF16_BIG_ENDIAN_BOM)
$encodType = 'UTF-16BE';
else if ($first2 == UTF16_LITTLE_ENDIAN_BOM)
$encodType = 'UTF-16LE';

//下面的判斷主要還是判斷ANSI編碼的·
if ($encodType == '') {//即默認創建的txt文本-ANSI編碼的
$content = iconv("GBK", "UTF-8", $text);
} else if ($encodType == 'UTF-8 BOM') {//本來就是UTF-8不用轉換
$content = $text;
} else {//其他的格式都轉化為UTF-8就可以了
$content = iconv($encodType, "UTF-8", $text);
}

㈣ PHP文件亂碼,怎麼回事

首先需要安裝一下ConvertToUTF8,然後按照以下步驟操作就不會有亂碼了。

1、調用ctrl+shift+p,輸入:install package回車。

2、在稍後彈出的安裝包框中搜索:ConvertToUTF8點擊安裝,重裝打開文件就不會有亂碼了。

㈤ php讀文本文件讀出來的內容是亂碼怎麼辦

看看你PHP文件是什麼編碼,然後用記事本打你的PHP文件,另存為
選擇編碼類型覆蓋。
或者用把讀出來的字元串轉碼。

㈥ 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'=>'打開文件失敗');
}
}

㈦ php格式文件用記事本TXT修改內容會亂碼要怎麼修改才不會

用記事本修改PHP文件,保存的時候要注意,一面文件頭部會出現bom信息;

  1. 修改完文件,點擊文件,選擇另存為;

  2. 保存類型選擇:所有文件(*.*);編碼選擇:utf-8。

  3. 然後點擊保存即可。

㈧ PHP生成TXT文件時亂碼

編碼問題
把 $time 的編碼轉換一下
即 把 $time=nowtime(); 改成 $time=iconv('utf-8','gbk', nowtime());

㈨ php寫入txt檔案出現亂碼

那是腳本編碼的問題
推薦用工具打開

Editplus或 Adobe Dreamweaver之類的.
在裡面可以設置編碼.

一般我們都用utf8.不推薦用gbk.早晚都要與utf8接軌的.何必呢???要從早養成習慣.

iconv是一個轉換編碼的語句,可以在手冊里查詢到.

header('Content-Type: text/html; charset=utf8');
是頭信息,必須放在腳本開頭.

foreach ($gb as $guestbook) { echo stripslashes($guestbook); }
break;

case 1:

你這個...語法不對.
break是中斷,中斷了哪裡???
下面的case沒有switch,你怎麼用的?

㈩ PHP讀取文件亂碼問題

1.fgetc($fp) 取得是單位元組的,中文可能的根據編碼可能有2 3 4位元組,所以不管怎麼輸出肯定都會是亂碼。
解決方法
1.修改php文件的編碼為utf-8, 只有這樣保存到test.txt文件里的文件才會是utf-8 大部分中文就都是按照3個位元組
2.$fp=fopen($filename,"r");
while(($char=fread($fp,3))!==''){
printf("%d.%s",ftell($fp)/3,$char);
}

閱讀全文

與php寫入TXT文件亂碼相關的資料

熱點內容
哈爾濱編程培訓課程 瀏覽:722
編程語言執行速度排行 瀏覽:174
啟辰原廠導航如何裝app 瀏覽:840
jsp項目優秀源碼 瀏覽:757
如何查看電腦web伺服器埠號 瀏覽:901
小區物業管理系統編程源碼 瀏覽:95
王城戰爭為什麼無法獲取伺服器列表 瀏覽:804
劍橋商務英語pdf 瀏覽:480
伺服器如何不休眠 瀏覽:800
微機原理及介面技術編程 瀏覽:204
解壓迷你游戲機手柄 瀏覽:553
androidrtsp框架 瀏覽:545
阿里女程序員內網徵婚 瀏覽:78
比例閥放大器接plc編程 瀏覽:852
java表示二進制 瀏覽:394
數控銑床外輪廓編程 瀏覽:91
pdftomp4 瀏覽:821
基於單片機的直流電機控制系統設計 瀏覽:879
微信程序APP怎怎麼注冊 瀏覽:123
java日歷課程設計 瀏覽:455