- Timestamp:
- 2011/03/07 15:37:16 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/version-2_5-dev/data/class/helper/SC_Helper_CSV.php
r20538 r20540 105 105 function sfGetCsvOutput($csv_id = "", $where = '', $arrVal = array(), $order = 'rank, no'){ 106 106 $objQuery =& SC_Query_Ex::getSingletonInstance(); 107 107 108 108 $cols = 'no, csv_id, col, disp_name, rank, status, rw_flg, mb_convert_kana_option, size_const_type, error_check_types'; 109 109 $table = 'dtb_csv'; 110 110 111 111 if(SC_Utils_Ex::sfIsInt($csv_id)){ 112 112 if($where == "") { … … 118 118 } 119 119 $objQuery->setOrder($order); 120 120 121 121 $arrRet = $objQuery->select($cols, $table, $where, $arrVal); 122 122 return $arrRet; … … 143 143 return $result; 144 144 } 145 145 146 146 /** 147 147 * CSVが出力設定で更新可能かのチェック … … 161 161 return $result; 162 162 } 163 163 164 164 /** 165 165 * CSVファイルのカウント数を得る. … … 218 218 $objQuery->setOrder($order); 219 219 $cols = SC_Utils_Ex::sfGetCommaList($arrOutputCols, true); 220 220 221 221 // TODO: 固有処理 なんかエレガントな処理にしたい 222 222 if($csv_id == '1') { … … 229 229 // 顧客の場合 230 230 $sql = "SELECT " . $cols . " FROM dtb_customer " . $where; 231 231 232 232 } 233 233 // 固有処理ここまで … … 318 318 ,'del_flg = 0' 319 319 ); 320 320 321 321 $outputArray = array(); 322 322 323 323 // ヘッダ行 324 324 $outputArray[] = $arrOutput['disp_name']; 325 325 326 326 // データ行 327 327 foreach ($dataRows as $row) { 328 328 $outputArray[] = $row; 329 329 } 330 330 331 331 // CSVを送信する。 332 332 $this->lfDownloadCsv($outputArray, 'category'); 333 333 334 334 // 成功終了 335 335 return true; … … 431 431 return ""; 432 432 } 433 433 434 434 if( strlen($enclosure) < 1 ) { 435 435 trigger_error('enclosure must be a single character', E_USER_WARNING); 436 436 return ""; 437 437 } 438 438 439 439 foreach (array_keys($fields) as $key) { 440 440 $field =& $fields[$key]; 441 441 442 442 // 配列を「|」区切りの文字列に変換する 443 443 if (is_array($field)) { 444 444 $field = implode($arrayDelimiter, $field); 445 445 } 446 446 447 447 /* enclose a field that contains a delimiter, an enclosure character, or a newline */ 448 448 if ( … … 453 453 } 454 454 } 455 455 456 456 return implode($delimiter, $fields); 457 457 } 458 458 459 459 /** 460 460 * CSVを送信する。 … … 482 482 } 483 483 } 484 484 485 485 /** 486 486 * CSVファイルを送信する。 … … 488 488 function lfDownloadCSVFile($filepath, $prefix = "") { 489 489 $file_name = $prefix . date('YmdHis') . ".csv"; 490 490 491 491 /* HTTPヘッダの出力 */ 492 492 Header("Content-disposition: attachment; filename=${file_name}"); … … 494 494 Header("Cache-Control: "); 495 495 Header("Pragma: "); 496 496 497 497 /* データを出力 */ 498 498 // file_get_contentsはメモリマッピングも自動的に使ってくれるので高速&省メモリ
Note: See TracChangeset
for help on using the changeset viewer.