[PHP-users 3148] Re: textarea の内容をCSV に書きたいが
Osamu Shigematsu
php-users@php.gr.jp
Fri, 26 Oct 2001 16:48:05 +0900
重松です。
addslashes() だと、\r\n をはじめとして、その他のコントロールコードもダメです
ね。もっとも、JIS なんかの場合、ESC をエスケープされると困るんではないか、と
思ったりもしますが。
説明
string addslashes (string str)
データベースへの問い合わせなどに際してクォートされるべき 文字の前にバックス
ラッシュを挿入した文字列を返します。クォート されるべき文字とは、シングルクォー
ト('), ダブルクォート("),バックスラッシュ (\) ,NUL (ヌルバイト) です。
stripslashes(), htmlspecialchars(), quotemeta() あたりも見たんですけど。
なんで、一文字ずつ見て必要なものは、その都度エスケープしないとダメですね。
かったるい。;-)
両方まとめて、
$buf = ereg_replace('\r\n?|\n','\\n',$buf);
でどうでしょうか。
# あと、" だとか、' なんかも対処する必要がある気はしますけど。
--
Osamu Shigematsu
http://www.ravi.ne.jp/%7eshige/
mailto:shige@ravi.ne.jp