$csvname = $csvname . '.csv';header('Content-Type: application/vnd.ms-excel;charset=GB2312');header('Content-Disposition: p_w_upload;filename="' . $csvname . '"');header('Cache-Control: max-age=0');header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');header('Cache-Control: no-cache, must-revalidate'); //HTTP/1.1
//open handle,php://output 表示直接输出到浏览器$fp = fopen('php://output', 'a');//output csv first column$head = $columName;foreach ($head as $i => $v) {    $head[$i] = iconv('utf-8', 'gbk', $v);
}
fputcsv($fp, $head);// 计数器$cnt = 0;$limit = 2000;// 从数据库中获取数据,节省内存,从句柄中一行一行读即可$i = 2;foreach ($result as $key => $val) {    $cnt++;    //每隔$limit行,刷新一下输出buffer
    if ($limit == $cnt) {        ob_flush();        flush();        $cnt = 0;
    }    $rows[$i] = iconv('utf-8', 'gbk', $val['vendor_item']);    $rows[$i + 1] = iconv('utf-8', 'gbk', $val['item_code']);    $rows[$i + 2] = iconv('utf-8', 'gbk', $val['product_name']);    $rows[$i + 3] = iconv('utf-8', 'gbk', $val['brand_code']);    $rows[$i + 4] = iconv('utf-8', 'gbk', $val['brand']);    $rows[$i + 5] = iconv('utf-8', 'gbk', $val['vendor_id']);    $rows[$i + 6] = iconv('utf-8', 'gbk', $val['vendor_name']);    $rows[$i + 7] = iconv('utf-8', 'gbk', $val['warehouse_code']);    $rows[$i + 8] = iconv('utf-8', 'gbk', $val['quantity']);    $rows[$i + 9] = iconv('utf-8', 'gbk', $val['lockcount']);    $rows[$i + 10] = iconv('utf-8', 'gbk', $val['bindcount']);
    fputcsv($fp, $rows);    //释放数组
    unset($rows);
}