fputcsv の覚書

PHPでデータをブラウザにCSV形式で出力する

でもちらと書いたのだけど、CSVデータのダウンロード別パターン。
[php] <?php $out = ''; $list = getHogeHogeList(); // sample if (!empty($list)) {
$fp = fopen("php://memory", 'r+'); foreach ($list as $row) { fputcsv($fp, $row); } rewind($fp); $out = mb_convert_encoding(stream_get_contents($fp), 'SJIS', mb_internal_encoding()); } header("Cache-Control:"); header("Pragma:"); header('Content-Type: application/octet-stream; charset=shift_jis'); header('Content-Disposition: attachment; filename=hoge' . date('YmdHis') .'.csv'); echo $out;[/php]
"php://memory" を使うところがまた微妙。