php實現匯出excel功能
阿新 • • 發佈:2018-11-05
- MySQL篩選出要匯出資料的列表,欄位就是excel中要顯示的列,比如id、name、address等
- 設定匯出excel的表名,一般是名稱加時間的格式,php程式碼如下:
$field = 'a.`did`,a.addtime,a.`phone`,a.`system`,a.msg_status,a.`author`'; $result = "select $field from table where 1=1"; //匯出excel核心 $file_name = "-下載地址預約表".date("Y-m-d",time()); $file_suffix = "xls"; header("Content-Type: application/vnd.ms-excel"); header("Content-Disposition: attachment; filename=$file_name.$file_suffix"); $this->smarty->assign('list', $result); $this->smarty->display("export.html");
- 輸入到html模板,html示例程式碼:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <table border=1 cellpadding=0 cellspacing=0> <tr><th colspan="5" style="height: 50px;line-height: 50px;background: #505050;color: #fff;font-size: 22px;">{$dname}-下載地址預約表</th></tr> <tr class="t1"> <td width="8%">預約遊戲名稱</td> <td width="3%">手機號碼</td> <td width="5%">預約時間</td> <td width="5%">系統型別</td> </tr> {foreach from=$list key=key item=val} <tr> <td><strong>{if $downid}{$dname}{else}{$val.dname}{/if}</strong></td> <td>{$val.phone}</td> <td >{$val.addtime|date_format:"%Y-%m-%d %H:%M:%S"}</td> <td >{if $val.system eq 1}安卓{elseif $val.system eq 2}IOS{else}全部{/if}</td> </tr> {/foreach} </table> </body> </html>
注:並不是所有瀏覽器都支援這種方式,推薦使用chrome瀏覽器