ThinkPHP导出CSV

287

前端

<a type="button" class="bth-exp" href="{:url('export/export_csv')}">导出CSV</a>

后端

public function export_csv(){
  $csvData = (new Members())->get_select_arr();
  $title = ['ID','昵称','头像','城市','职业','签名'];
  $file_name="members".date("YmdHi",time()).".csv";
  header('Content-Type:application/vnd.ms-excel');
  header('Content-Disposition:attachment;filename='.$file_name);
  header ( 'Cache-Control:max-age=0');
  $file = fopen('php://output','a');
  foreach($title as $v) {
    $tit[] = iconv('UTF-8', 'gbk//IGNORE',$v);
  }
  \fputcsv($file,$tit);
  foreach($csvData as $v) {
     foreach($v as $kk=>$vv) {
        $tarr[] = iconv('UTF-8','gbk//IGNORE',$vv);
     }
     \fputcsv($file,$tarr);
    unset($tarr);
  }
  unset($csvData);
  fclose($file);
  exit();
}