プロが教えるわが家の防犯対策術!

宜しくお願い致します。
色々なタイプのテキストファイルからカンマ区切りのCSVファイルを生成できるフォームを作っております。
テキストデータの状況によってレコードの終端記号、切出すカラム(フィールド)数、カラム(フィールド)の区切記号もしくは文字数で抽出を好きに設定できるフォームなのですが、改行コード『\n』をPOSTで受け渡すとsplit関数でセパレートできません。
split関数の手前で変数に\nを代入した場合は問題なく配列化できます。
POSTで\記号を受け渡す際に何か問題が発生していると思うのですが、どうしてもうまく解消できません。
文字コードはeuc-jpです。

解消する方法をご教授頂けますと大変助かります。

A 回答 (3件)

もしかしたらブラウザ側で勝手に改行を \n かた \r\n に変えている可能性もあるので、


\r\n と \r を \n に置換してみてはいかがでしょうか。
    • good
    • 1
この回答へのお礼

ありがとうございます。
やってみましがた、だめでした・・・

お礼日時:2009/02/14 18:24

\rとかの問題なら split("\r\n|\n|\r", $data) とか思いましたけど


もしかして \n とフォームに入力しているという意味?
なら \\n \\\\n みたいにするか必要があるかと。
単純な分解なら explode でも。
    • good
    • 0

状況がよくわかりませんが、普通にできませんか?



<?
if($_POST){
$array=split("\n",$_POST["test"]);
print_r($array);
}
?>

<form method="post">
<textarea name="test">
hoge
fuga
piyo
</textarea>
<input type="submit" value="go">
</form>
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!