當我使用fgetcsv
方法從csv文件讀取時,如果它們位於字符串的開頭,它將刪除「Å」和「Ø」。PHP 5.3:fgetcsv和缺失字母
while (($data = fgetcsv($handle, 0, "\t")) !== FALSE) {
echo $data[0]."<br />";
}
假設我的CSV僅包含一個ÅbyÅÅÅÅhøjÅ
行,輸出是byÅÅÅÅhøjÅ
(注缺少的「A」開頭)
什麼想法?
當我使用fgetcsv
方法從csv文件讀取時,如果它們位於字符串的開頭,它將刪除「Å」和「Ø」。PHP 5.3:fgetcsv和缺失字母
while (($data = fgetcsv($handle, 0, "\t")) !== FALSE) {
echo $data[0]."<br />";
}
假設我的CSV僅包含一個ÅbyÅÅÅÅhøjÅ
行,輸出是byÅÅÅÅhøjÅ
(注缺少的「A」開頭)
什麼想法?
我剛纔包裹輸入引號 - 現在的字符串將永遠第一個字符文件的編碼‘和你的PHP腳本」
注意
區域設置是由該功能考慮在內。如果LANG 是例如en_US.UTF-8,單字節編碼的文件被這個 函數讀錯。
這意味着您需要將字符串的編碼與您的區域設置(或反之亦然)進行匹配。還有一個bug report on bugs.php.net有關輸入字符串中意外字符的不一致處理。
也許看對。’:http://php.net/manual/ en/function.fgetcsv.php:「此功能考慮到區域設置。如果LANG是例如en_US.UTF-8,單字節編碼的文件被這個函數讀錯了。「 – Akarun 2012-03-28 12:28:04