[請益] fgetcsv讀txt印出陣列的編碼問題

看板PHP作者 (勇敢的微笑先生曬衣夾)時間16年前 (2008/07/11 22:35), 編輯推噓0(003)
留言3則, 2人參與, 最新討論串1/1
不好意思 請問一下一個問題Qq 我手邊有一個日檢的單字檔案(.txt), 我已經將它格式化好了,有日文,有數字,有中文..共有八千多行單字與解釋, 大概長這個樣子 あ , 3 , ああ , [感動詞] , あ , 3 , ああ , [指示詞] , あ , 2 , あい , 愛 , 愛 あ , 2 , あいかわらず , , 仍然 あ , 3 , あいさつ・する , 挨拶 , 問候 php檔跟txt檔我都已經用 Notepad++ 存成 utf8 no BOM了, php程式碼是這樣 <? $row = 1; $handle = fopen("jp.txt", "r"); while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { $num = count($data); echo "第 $row 行 $num 欄位 : \n"; $row++; for ($c=0; $c < $num; $c++) { echo $data[$c] . " | "; } echo "<br />"; } fclose($handle); ?> 可是我怎麼跑都會變成這樣.. 第 1 行 5 欄位 : | 3 | ?あ | [感動詞] | | 第 2 行 5 欄位 : | 3 | ?あ | [指示詞] | | 第 3 行 5 欄位 : | 2 | ?い | | | 第 4 行 5 欄位 : | 2 | ?いかわらず | | 仍然 | 第 5 行 5 欄位 : | 3 | ?いさつ・する | ??拶 | ?候 | 第1個欄位的あ跑不出來,後面欄位的第一個字,則都會變成問號... 有查過setlocale(),可是不知道要怎麼用.. 試過 setlocale(LC_ALL, 'ja_JP.UTF8'); setlocale(LC_ALL, 'zhTW.UTF8'); 可是不論放在哪邊,都沒有效果,不是很懂這個的作用>"<.. 請問這個問題在哪邊呢?... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.179.220

07/11 23:17, , 1F
setlocale跟你要的東西好像沒有關係喔
07/11 23:17, 1F

07/11 23:37, , 2F
那請問該怎麼做呢 我是在php fgetcsv函式底下看到的
07/11 23:37, 2F

07/12 03:18, , 3F
我找到方法了,只好把每個字加上括號了,醬就可以了
07/12 03:18, 3F
文章代碼(AID): #18Ts-aw6 (PHP)