摘要:,是逗號分隔值的英文縮寫,通常都是純文本文件。如果你導出的沒有什么高級用法的話,只是做導出數據用那么建議使用本方法要比要高效的多。二十萬數據導出大概需要到秒。
CSV,是Comma Separated Value(逗號分隔值)的英文縮寫,通常都是純文本文件。
如果你導出的Excel沒有什么高級用法的話,只是做導出數據用那么建議使用本方法,要比PHPexcel要高效的多。
二十萬數據導出大概需要2到3秒。
/** * 導出excel(csv) * @data 導出數據 * @headlist 第一行,列名 * @fileName 輸出Excel文件名 */ function csv_export($data = array(), $headlist = array(), $fileName) { header("Content-Type: application/vnd.ms-excel"); header("Content-Disposition: attachment;filename="".$fileName.".csv""); header("Cache-Control: max-age=0"); //打開PHP文件句柄,php://output 表示直接輸出到瀏覽器 $fp = fopen("php://output", "a"); //輸出Excel列名信息 foreach ($headlist as $key => $value) { //CSV的Excel支持GBK編碼,一定要轉換,否則亂碼 $headlist[$key] = iconv("utf-8", "gbk", $value); } //將數據通過fputcsv寫到文件句柄 fputcsv($fp, $headlist); //計數器 $num = 0; //每隔$limit行,刷新一下輸出buffer,不要太大,也不要太小 $limit = 100000; //逐行取出數據,不浪費內存 $count = count($data); for ($i = 0; $i < $count; $i++) { $num++; //刷新一下輸出buffer,防止由于數據過多造成問題 if ($limit == $num) { ob_flush(); flush(); $num = 0; } $row = $data[$i]; foreach ($row as $key => $value) { $row[$key] = iconv("utf-8", "gbk", $value); } fputcsv($fp, $row); } }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/21618.html
關于 PHP 導出 excel csv 常用的有 PHPexcel ,本文整理了一些其他方案。 高性能 Excel 擴展 sudo apt-get install -y zlib1g-dev git clone https://github.com/jmcnamara/libxlsxwriter.git cd libxlsxwriter make && sudo make install // ...
摘要:本文非原創,基于學院在中使用實現文件導入導出功能這篇文章在實際中測試調整。簡介在中集成套件中的,從而方便我們以優雅的富有表現力的代碼實現文件的導入和導出。 本文非原創,基于laravel 學院《在 Laravel 5 中使用 Laravel Excel 實現 Excel/CSV 文件導入導出功能》 這篇文章在實際中測試調整。 showImg(https://segmentfault.c...
摘要:導出功能在管理后臺算是比較常見的了。但是如果用來打開,超過行的數據都會看不見,這是程序的問題。本次導出數據量很大。原因數值顯示精度為位造成精度丟失。 導出功能在管理后臺算是比較常見的了。在實現導出表格類信息的功能時,可以選擇兩種實現方式: 導出為excel 導出為csv文件格式 用csv方式導出,則可以像導出txt一樣,以文本流的方式進行流式處理,不但能導出海量信息,而且流式處理占...
摘要:目前導出方式占用內存較大。比如有些狀態字段,數據庫存的就是數字或只占一個字節,完全換成中文狀態的話,可能達個字節甚至更多。若是必須要用中文形式。中文亂碼解決的話,其實也很簡單,函數,將轉為編碼,在中打開就不會錯了 問題描述:目前、一般情況下,在web開發過程中,使用導入導出報表的情形很多。我們先說導出。項目數據量多導出行數較多,50萬行左右,選擇的是csv方式導出。針對以下應用場景,導...
閱讀 3870·2021-09-29 09:34
閱讀 3788·2021-09-27 13:34
閱讀 581·2021-09-24 09:47
閱讀 3046·2019-08-30 15:53
閱讀 1824·2019-08-26 13:54
閱讀 2097·2019-08-26 13:43
閱讀 546·2019-08-23 14:47
閱讀 1755·2019-08-23 14:28