プログラミング奮闘記録

プラグラマーへ奮闘。PHP・Cakephp・JavaScript・isoアプリのコード勉強ブログです。その他の言語やツールなども使用します。

cakephpでcsvでDBを出力してみた!!

phpCSVの出力は、何回か実装したみたことがあったが

cakephpでしたことないなと思い。

 

実装してみた。

早速便利なものが見つかった。

tagamidaiki.com

 

すごい!!コピペで実装できるやん!!

 

と思ったができない。。。

なぜかエラーーーー

 

オーマイガーーー!!!

 

ということでひたすら検索してみた。

なんかいろいろあるみたいだわ。

 

 

調べて〜動かす〜ダウンロードできる〜

となったのが下記になります。

 

CsvHelper.phpは、下記のサイトを参考させて頂きまるまるコピーです。

 

tagamidaiki.com

 

Controllerは、ダウンロード機能を実装させたいところに入れてください。

 

public $helper = array('Csv');

 

public function csv() {
//Configure::write('debug', 0);
$this->layout = false;
$posts = $this->Post->find('all'); //記事一覧データを取得
$this->set('posts', $posts);
}

 

 

ほんで、csv.ctpファイルを作成。

<?php

//ファイル名設定
$this->Csv->setFilename('posts.csv');

$header = array('ID', 'タイトル', '本文');

//ヘッダー行追加
$this->Csv->addRow($header);

foreach ($posts as $data) {
$post = $data['Post'];

//出力するカラムを取り出す
$row = array(
$post['id'],
$post['title'],
$post['body'],
);

//データ行追加
$this->Csv->addRow($row);
}

//CSVファイルダウンロード出力
echo $this->Csv->render(true, 'sjis-win', 'utf-8');

?>

 

これいけました。

 

参考までに。

 

 

 

次は、関係ないMagentoのインストールをしてみます。

なんか流行りそうやし!!!

適当にいじってみます。

かっこよさそう。