/** * 配列データのCSVを送信する。 * * @param array $fields データ配列 * @param string $prefix * @return void */ function lfDownloadCsv($arrData, $prefix = '') { if ($prefix == '') { $dir_name = SC_Utils_Ex::sfUpDirName(); $file_name = $dir_name . date('ymdHis') . '.csv'; } else { $file_name = $prefix . date('ymdHis') . '.csv'; } /* HTTPヘッダの出力 */ Header("Content-disposition: attachment; filename={$file_name}"); Header("Content-type: application/octet-stream; name={$file_name}"); Header('Cache-Control: '); Header('Pragma: '); /* データを出力 */ foreach ($arrData as $lineArray) { $lineString = $this->sfArrayToCsv($lineArray); $lineString = mb_convert_encoding($lineString, 'SJIS-Win'); echo $lineString . "\r\n"; } }
function sfGetCSVData($data, $prefix = '') { if ($prefix == '') { $dir_name = SC_Utils_Ex::sfUpDirName(); $file_name = $dir_name . date('ymdHis') . '.csv'; } else { $file_name = $prefix . date('ymdHis') . '.csv'; } if (mb_internal_encoding() == CHAR_CODE) { $data = mb_convert_encoding($data, 'SJIS-Win', CHAR_CODE); } /* データを出力 */ return array($file_name, $data); }
/** * 前方互換用 * * @deprecated 2.13.2 */ public function lfDownloadCsv($arrData, $prefix = '') { trigger_error('前方互換用メソッドが使用されました。', E_USER_WARNING); if ($prefix == '') { $dir_name = SC_Utils_Ex::sfUpDirName(); $file_name = $dir_name . date('ymdHis') . '.csv'; } else { $file_name = $prefix . date('ymdHis') . '.csv'; } SC_Response_Ex::headerForDownload($file_name); /* データを出力 */ $fp =& SC_Helper_CSV_Ex::fopen_for_output_csv(); foreach ($arrData as $lineArray) { fputcsv($fp, $lineArray); } fclose($fp); }