2008年11月4日火曜日

(suz-php-jquery) CSVダウンロード

スズキです。

suz-php-jqueryにCVSダウンロードの枠組みを用意しました。
(下記です)

--------【PHP】--------
set_include_path(
  "../../php/ext/" . PATH_SEPARATOR .
  "../../php/lib/" . PATH_SEPARATOR .
  "../../php/app/"
);
require_once "Util.php";
Util::nochache();
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=test.csv");
$out = fopen('php://output', 'w');
$array = Util::invoke();
for($i = 0; $i < count($array); $i++) {
  fputcsv($out, $array[$i]);
}
fclose($out);
--------
http://code.google.com/p/suz-lab/source/browse/trunk/suz-php-jquery/webapp/PHP/csv.php

使い方は、json.phpと同じです。
http://suz-lab.blogspot.com/2008/10/suz-php-jqueryjson.html

PATH_INFOで指定されたクラスのメソッドの戻り値が、
CSVデータとなりダウンロードされます。

データベースのデータをCSVにするには、こんな感じのActionになります。

--------【PHP】--------
public function testCsv() {
  $dao = new Dao();
  return $dao->selectHogeList();
}
--------
http://code.google.com/p/suz-lab/source/browse/trunk/suz-php-jquery/php/app/Action/ExampleAction.php

エラー処理しっかりやる前に、ログまわりや、
エラーの出力ルールをしっかり決めないと...

--
http://suz-lab.blogspot.com/

0 コメント: