1

メソッドを使用してcsvファイルから読み取るfgetcsvと、文字列の先頭にある「Å」と「Ø」が削除されます。

while (($data = fgetcsv($handle, 0, "\t")) !== FALSE) {
        echo $data[0]."<br />";
}

私のcsvに1行しか含まれていないと仮定するとÅbyÅÅÅÅhøjÅ、出力は次のようになりますbyÅÅÅÅhøjÅ(先頭に「Å」がないことに注意してください)

何か案は?

4

2 に答える 2

3

ドキュメントからfgetcsv

ノート

この関数では、ロケール設定が考慮されます。LANGがen_US.UTF-8などの場合、1バイトエンコーディングのファイルはこの関数によって誤って読み取られます。

これは、文字列のエンコーディングをロケール設定に一致させる必要があることを意味します(またはその逆)。また、bugs.php.netには、入力文字列内の予期しない文字の一貫性のない処理に関するバグレポートがあります。

于 2012-03-28T12:27:29.240 に答える
0

入力を引用符で囲んだところです。これで、文字列の最初の文字は常に ".

于 2012-04-07T14:45:16.767 に答える