没有';是否在laravel(php)中下载.csv?

没有';是否在laravel(php)中下载.csv?,php,laravel-5,export-to-csv,Php,Laravel 5,Export To Csv,我是拉拉维尔的新手,当我点击我的代码时,它会像浏览器一样给出响应 输出: ID,“事件名称” 1,“测试事件” 3,“测试1” 请查看下面的代码并指导我=> $events = Events::all()->toArray(); $event_set = array(); //echo '<pre>'; print_r($events); die; $i =0; foreach ($events as $even

我是拉拉维尔的新手,当我点击我的代码时,它会像浏览器一样给出响应 输出: ID,“事件名称” 1,“测试事件” 3,“测试1”

请查看下面的代码并指导我=>

$events = Events::all()->toArray();
        $event_set = array();

        //echo '<pre>'; print_r($events); die;
        $i =0;
        foreach ($events as $event)
        {
            $record['id'] = $event['id'];
            $record['event_name'] = $event['event_name'];
            $event_set[$i] = $record;
            $i++;
        }

        //echo '<pre>'; print_r($event_set); die('test');
        $filename = "events.csv";

        $header = ['ID', 'Event Name'];
        $export_data = $this->getDataCsv($event_set, $header);
        return response($export_data)
            ->header('Content-Type','application/csv')
            ->header('Content-Disposition', 'attachment; filename="'.$filename.'"')
            ->header('Pragma','no-cache')
            ->header('Expires','0');


function getDataCsv($data, $headers, $delimiter = ',', $enclosure = '"') {


        $filename = "php://temp";
        $fp = fopen($filename, 'w');
        fputcsv($fp, $headers, $delimiter, $enclosure);
        if(count($data)>0){
            foreach ($data as $key => $value) {
                fputcsv($fp, $value, $delimiter, $enclosure);
            }
        }
        rewind($fp);
        $csvdata = fread($fp, 1048576);
        fclose($fp);
        return rtrim($csvdata, "\n");
    }
$events=events::all()->toArray();
$event_set=array();
//回声';打印(事件);死亡
$data = [
        ['ID', 'Event Name', 'test event'], // this is going to be header for the csv file
        [1, 'xyz', 'aadfas'],
        [2, 'abc', 'jljljl'],
    ];
public function arrayToCSVDonwload($data, $fileName = null, $delimiter = ",")
{

    $fileName = $fileName ? $fileName . '.csv' : microtime(true) . ".csv";

    header("Content-Type: application/csv");
    header('Content-Type: application/octet-stream');
    header("Content-Disposition: attachment; filename=$fileName");
    header("Cache-Control: no-cache, no-store, must-revalidate");
    header("Pragma: no-cache");
    header("Expires: 0");

    $output = fopen("php://output", "w");

    foreach ($data as $row) {
        fputcsv($output, $row, $delimiter);
    }
    fclose($output);
    exit;
}
$i=0; foreach($events作为$event) { $record['id']=$event['id']; $record['event_name']=$event['event_name']; $event_set[$i]=$record; $i++; } //回声';打印(事件集);模具(“测试”);
$data = [
        ['ID', 'Event Name', 'test event'], // this is going to be header for the csv file
        [1, 'xyz', 'aadfas'],
        [2, 'abc', 'jljljl'],
    ];
public function arrayToCSVDonwload($data, $fileName = null, $delimiter = ",")
{

    $fileName = $fileName ? $fileName . '.csv' : microtime(true) . ".csv";

    header("Content-Type: application/csv");
    header('Content-Type: application/octet-stream');
    header("Content-Disposition: attachment; filename=$fileName");
    header("Cache-Control: no-cache, no-store, must-revalidate");
    header("Pragma: no-cache");
    header("Expires: 0");

    $output = fopen("php://output", "w");

    foreach ($data as $row) {
        fputcsv($output, $row, $delimiter);
    }
    fclose($output);
    exit;
}
$filename=“events.csv”; $header=['ID','Event Name']; $export\u data=$this->getDataCsv($event\u set,$header); 返回响应($export\u数据) ->标题('Content-Type'、'application/csv') ->标题('Content-Disposition','attachment;filename=“.$filename.”) ->标头('Pragma','no-cache') ->标题('Expires','0'); 函数getDataCsv($data,$headers,$delimiter=',',$enclosure='”){ $filename=”php://temp"; $fp=fopen($filename,'w'); fputcsv($fp,$headers,$delimiter,$enclosure); 如果(计数($data)>0){ foreach($key=>$value形式的数据){ fputcsv($fp,$value,$delimiter,$enclosure); } } 倒带($fp); $csvdata=fread($fp,1048576); fclose($fp); 返回rtrim($csvdata,“\n”); }

请告诉我,我做错了什么?

使用此功能生成和下载CSV文件

将数据传递为:

并调用这个函数