最近用到php导出excel的例子;
我先贴出来,后面慢慢解释:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | private function excel($data){ header("Content-Type: application/vnd.ms-excel"); header("Content-Disposition: attachment; filename=list.xls"); // 表名 header("Pragma: no-cache"); // 缓存 header("Expires: 0"); $sepcol = " \t "; // 分列; $sepbr = "\n"; // 分行 foreach ($data as $key) { foreach ($key as $value) { // 一行 echo mb_convert_encoding($value,"GBK","utf-8").$sepcol; // 分列 } echo $sepbr;//分行 } exit; } |
上面看到的$data是个二维数组,意思,你从数据库选出来是什么样式,导出的excel就是什么样式,下面是我模拟的二维数组,调用上面的方法;
1 2 3 4 5 6 7 8 9 10 11 | private function excelout(){ $info = array(); $info[0] = array('问卷名称:',$title['sftitle']); $info[1] = array('问卷内容:'); $info[2] = array('工单号','受理人','工作内容','评价人','评价'); //$info = array_merge($info,$result); //var_dump($info);exit; $this->excel($info); } |