質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

2回答

949閲覧

fputcsvのCSV出力について

oyashiro

総合スコア37

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

1グッド

1クリップ

投稿2018/02/28 09:24

$resultの配列について、
下記のような順番でcsvを出力していきたいのですが、
fputcsvでの書き方がわかりません。

fputcsvにする理由は、備考欄のmesの部分で改行が入っているとひとつのセルにおさまらず、
異なるレコードとして分けられてしまうためです。

for( $i = 0; $i < $result_cnt; $i++ ) { file_put_contents('../dat/user_' . $date_csv . '.csv', $result[$i]['name'] . ',' . /* 注文者名 */ $result[$i]['name_kana'] . ',' . /* 注文者名カナ */ $result[$i]['mail'] . ',' . /* メールアドレス */ $result[$i]['zip'] . ',' . /* 郵便番号(頭3桁) */ $result[$i]['zip2'] . ',' . /* 郵便番号(下4桁) */ $result[$i]['address'] . ',' . /* 都道府県 */ $result[$i]['address2'] . ',' . /* 都市区町以降 */ $result[$i]['tel'] . ',' . /* 電話番号1 */ $result[$i]['tel2'] . ',' . /* 電話番号2 */ $result[$i]['tel3'] . ',' . /* 電話番号3 */ $result[$i]['mes'] . ',' . /* 備考欄 */ "\n" , FILE_APPEND); }

よろしくお願い致します。

carrotRakko👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

備考欄のmesの部分で改行が入っているとひとつのセルにおさまらず

のところが、認識がおかしいように感じますが
改行は必ずしもその行レコードの終わりではありません
エンクロージャであるダブルクォートでくくっていれば改行があってもレコードは続きます。
CSVのなんたるかと、csv系の関数がどう解釈するかを理解する必要があるように見受けられます

投稿2018/02/28 10:42

yambejp

総合スコア114572

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/02/28 11:24

セルの途中で改行コードを含んでいても正しく扱えるCSVエディター(Windowsだと例えばcassavaとか)の存在を教えてあげたくなりますね。
guest

0

変数名など質問に合わせると、以下のようなコードになろうかと思います。

php

1$fp = fopen('../dat/user_' . $date_csv . '.csv', 'w'); 2for ($i = 0; $i < $result_cnt; $i++) { 3 fputcsv($fp, $result[$i]); 4} 5fclose($fp);

なお、使いたい関数が決まっている場合には、PHPの公式ドキュメントが便利です。参考までにfputcsvのページのリンクを貼っておきます。
PHP: fputcsv - Manual

投稿2018/02/28 09:51

編集2018/02/28 09:52
carrotRakko

総合スコア77

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問