PHP匯出資料到CSV檔案

2021-07-10 01:31:08 字數 1503 閱讀 8637

後台往往需要匯出各種資料到 excel文件中。通常我們是匯出 .csv檔案格式,php匯出函式參考**如下:

/**

* 匯出資料到csv檔案

* * @param array $data 二維陣列(模擬資料表記錄)

* @param array $titlelist 標題陣列列表

* @param string $filename csv檔名

*/function csv_export(&$data, $titlelist = array(), $filename = '')

$csvdata .= '"' . $titlelist[$nums - 1] . "\"\r\n";

foreach ($data as $key => $row)

elseif ($i == ($nums - 1))

$i++;

} unset($data[$key]);

} $csvdata = mb_convert_encoding($csvdata, "cp936", "utf-8");

$filename = empty($filename) ? date('y-m-d-h-i-s', time()) : $filename;

$filename = $filename . '.csv';

header("content-type:text/csv;");

header("content-disposition:attachment;filename=" . $filename);

header('cache-control:must-revalidate,post-check=0,pre-check=0');

header('expires:0');

header('pragma:public');

echo $csvdata;

die();

}

使用示例:

$data = array(

array(

'name' => 'jake',

'score' => 80,

'grade' => 'a'

), array(

'name' => 'jin',

'score' => 70,

'grade' => 'a'

), array(

'name' => 'john',

'score' => 80,

'grade' => 'a'

), array(

'name' => 'ben3',

'score' => 203,

'grade' => 'b3'

));$titlelist = array('姓名', '總分', '等級');

$filename = '高三(3)班 7 月份考試結果';

csv_export($data, $titlelist, $filename);

php 匯出大資料到csv檔案

set time limit 0 ini set memory limit 256m db this load database default true sql select from t mobile number section condition query db query sql res...

php匯出百萬資料到csv

set time limit 0 設定超時 ini set memory limit 100m 設定最大使用的記憶體 header content type text csv header content disposition attachment filename date ymd csv he...

PHP匯出CSV檔案

經常會碰到需要從資料庫中匯出資料到excel檔案,用一些開源的類庫,比如phpexcel,確實比較容易實現,但對大量資料的支援很不好,很容易到達php記憶體使用上限。這裡的方法是利用fputcsv寫csv檔案的方法,直接向瀏覽器輸出excel檔案。輸出excel檔案頭,可把user.csv換成你要的...