csv出力する場合のデータの整形

https://himaise.com/php/

PHPでcsv出力する

PHPcsv出力する場合の配列の形。

$data = [];

//1、
$data[] = [1,'ノート',100];
$data[] = [2,'鉛筆',200];
//-----------------------------
//2、
$data = [[1,'ノート',100],[2,'鉛筆',200]];

//※1でも2でも同じ形

var_dump($data);
//------------------------------------
/*array(2) {
  [0]=>
  array(3) {
    [0]=>
    int(1)
    [1]=>
    string(9) "ノート"
    [2]=>
    int(100)
  }
  [1]=>
  array(3) {
    [0]=>
    int(2)
    [1]=>
    string(6) "鉛筆"
    [2]=>
    int(200)
  }
*/

書き込む

書き込む際には、ここで作った$dataをforeachで回してやるので、1列ごとにまとめた配列を表示していくようになる。

その際に、カンマ区切りでまとめた文字列とすることで、セルごとに書き込みができるようになる。
implodeを使う。

foreach($data as $key => $array){
   $target = implode(',',$array);
}

あとは、fopen()、fwrite()を使い、ファイルの読み込みと書き込みをする。

basic, php, programming

Posted by himajinn