php原生导出excel文件的两种方法
生活随笔
收集整理的這篇文章主要介紹了
php原生导出excel文件的两种方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
第一種方法:
$filename='文件名稱';$filetitle='你的標題';if($_POST){set_time_limit(10000);$title = '';ini_set('memory_limit','300M');header('Content-Type: application/vnd.ms-excel;charset=utf-8');$name = $title.".xls";header('Content-Disposition: attachment;filename='.$name.'');header('Cache-Control: max-age=0');$where = "1=1";$sql = "";$query = DB::Query($sql);// PHP文件句柄,php://output 表示直接輸出到瀏覽器 $fp = fopen('php://output', 'a');// 輸出Excel列頭信息 $head = array('ID');//字符替換$p_new_lines = array("\r\n", "\n","\t","\r","\r\n", "<pre>","</pre>","<br>","</br>","<br/>");$p_change_line_in_excel_cell = '';foreach($head as $v){echo iconv('utf-8','gb2312',$v) . "\t";}echo "\n";// 計數器 $cnt = 0;// 每隔$limit行,刷新一下輸出buffer,節約資源 $limit = 100000;// 逐行取出數據,節約內存while ($res = mysql_fetch_assoc($query)) {$cnt ++;if ($limit == $cnt) { //刷新一下輸出buffer,防止由于數據過多造成問題 ob_flush();flush();$cnt = 0;} echo trim($res['id']). "\t";echo "\n";}}第二種方法:
$filename='文件名稱';$filetitle='你的標題';if($_POST){$title = '';ini_set('memory_limit','300M');header('Content-Type: application/vnd.ms-excel;charset=utf-8');$name = $title.".xls";header('Content-Disposition: attachment;filename='.$name.'');header('Cache-Control: max-age=0');echo '<html xmlns:o="urn:schemas-microsoft-com:office:office"xmlns:x="urn:schemas-microsoft-com:office:excel"xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv="expires" content="Mon, 06 Jan 1999 00:00:01 GMT"><meta http-equiv=Content-Type content="text/html; charset=gb2312"><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name></x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head>';$where = "1=1";$sql = " ";mysql_query('set names "utf8"');mysql_set_charset('utf8');$query = DB::Query($sql);// PHP文件句柄,php://output 表示直接輸出到瀏覽器 $fp = fopen('php://output', 'a');// 輸出Excel列頭信息 $head = array('ID','xxx');//字符替換$p_new_lines = array("\r\n", "\n","\t","\r","\r\n", "<pre>","</pre>","<br>","</br>","<br/>");$p_change_line_in_excel_cell = '';echo "<table>";echo "<tr>";foreach($head as $v){echo "<td>".iconv('utf-8','gb2312',$v)."</td>";}echo "</tr>";// 逐行取出數據,節約內存while ($res = mysql_fetch_assoc($query)) {echo "<tr>";echo "<td style='vnd.ms-excel.numberformat:@'>".$res['id']."</td>";echo "<td>".iconv('utf-8', 'gb2312', $res['xxx']."</td>";echo"</tr>";}echo "</table>";}總結
以上是生活随笔為你收集整理的php原生导出excel文件的两种方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机仿真课程设计四号题,上海电力学院电
- 下一篇: SMT32H743+CubeMX-配置M