勉強したことのメモ

webプログラマ見習いが勉強したことのメモ。

PHPで配列データをCSVとしてダウンロードさせる方法

   

PHPでログ的なデータをCSV化したかった。ただ、複数の人間が使うのでCSVファイルを都度生成していくと容量が圧迫されそう。また、権限の問題でAさんは全てCSV化できるけど、Bさんは制限付のものしかCSV化できないというケースで、ファイルを生成してしまうとURLを直で叩かれた場合にどうなるのか怖かった。

探してみると配列をCSVとしてダウンロードさせる方法があった。

以下ソース。

 

 

例えば上記を記述したcsv.phpというファイルを作成し、他のページからリンクを貼るとCSVをダウンロードしてくれる。

CSVファイル自体は生成されないので、容量とかは問題なし。

クエリをつけたり、cookieとかで権限情報を保持している場合はソース上部のところで処理する。

ただ単にCSVファイルを生成するだけなら以下の過去記事参照。

https://taitan916.info/blog/?p=205

 - PHP

  関連記事

Opauthで「Please change the…」エラー

Opauthを使用中に「Notice: Please change the va ...

MySQLiでUPDATE文

MySQLiでUPDATE文 ■ソース $mysqli = new mysqli ...

PHP7が2015年11月にリリースされるらしい

PHP7で変わること ——言語仕様とエンジンの改善ポイント from Yoshi ...

PukiWikiでバックアップのスケジュール化

PukiWikiでバックアップを取りたかった。調べたらディレクトリごと保存すれば ...

MySQLでIPを整数値としてカラムに格納する

MySQLでIPを整数値としてカラムに格納しているケースがあった。今までIPが必 ...

フォームからCSVファイルをアップロードしてPHPの配列に格納する方法

formからcsvファイルをアップロードさせて、PHPで色々処理したかった。とり ...

PHPで一括出力ではなく、ひとつずつ順次に出力する方法

PHPで重たい処理とかをしている際に、途中報告みたいな形で順次出力させる方法のメ ...

mPDFで「The /e modifier is …」エラー

pdf関連のPHPライブラリ「mPDF」を使っているページがエラーログにのってお ...

PHPでis_fileとfile_existsについて

ファイルの存在チェックを行う際に、file_exists関数を 使用していたが、 ...

MySQLで加算しつつNULL値は0にする

いくつかのコードに対して投票を行い、 その合計値をスコアとして出したい。 ただ、 ...