6

管理していないソースからダウンロードしているCSVがあり、各行の終わりは

^M 

bash端末に印刷されたときの文字。PHPでこの入力をプログラムでサニタイズするにはどうすればよいですか?

4

3 に答える 3

19

表示されているのはWindowsの制御文字です。PHPでこれを取り除くには、 $file = str_ireplace("\x0D", "", $file) 16進数が小文字でも大文字でも、これが機能するようにする必要があります。

于 2012-08-07T19:08:53.583 に答える
5

また、CSVファイルを読み取る前にこの行を追加するだけで、PHPに奇妙な行末を自動検出するように依頼することもでき、他に何もする必要はありません。

ini_set('auto_detect_line_endings', true);
于 2018-01-18T03:58:43.073 に答える
4

^Mキャリッジリターンです。次の方法で削除できるはずです。

$string = str_replace( "\r", "", $string);
于 2012-08-07T19:09:18.443 に答える