- 締切済み
csvに中身が書き込まれない
作成してみたものがうまく動かず、どこがおかしいのかよく分からないため、 質問させていただきます。 もともとtest.csvにはUTF-8で作成した中身があります。 ひとつ前の画面でPOST送信しているフォームがあり、 中身のデータは下記です。 <form action="kakikomi.php" method="post"> <input type="hidden" name="aaa" value="bbb,ccc,ddd"> </form> #kakikomi.php(UTF-8) $csvFileName="test.csv";$csv=array(); foreach($_POST as $val){$csv[]=explode(",",$val);} setlocale(LC_ALL,"ja_JP.UTF-8"); if( $pointer=fopen($csvFileName,"w")): foreach($csv as $line){fputcsv($pointer,$line);} fclose($pointer); //print_r($csv); else:die('メッセージ'); endif; この結果はcsvの中身は真っ白になってしまいます。 fputcsvのマニュアル例からそのまま引用したのですがどこかおかしいのでしょうか。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- mpro-gram
- ベストアンサー率74% (170/228)
fputcsv の2番目引数に配列を入れてないからでは? $csv は一次元配列なので、その各要素 $line はスカラー値 phpマニュアルでは、2次元配列を foreach でループしているので、$lineに1次元配列が入っている。 print_r($csv) みても違いがわからなかったのだろうか?