本文主要和大家分享php如何用header导出excel详解,希望能帮助到大家,我们先来看一下示例图。
这个是导出execl 按钮导出execl
$("#execl").click(function(){
var data = $("form").serialize();
location.href = "?"+data;
});
直接把查询条件,全部传值给另外一个连接
lists 是查询的列表方法, excel 是导出 方法, 把原来的方法调用一遍
添加 2个 header 代码 然后 改 写 view html 的文件 就直接导出了function lists()
{
I("date") ? $this->date = I("date"):$this->date =date("Y-m");
$where = $this->query();
$model = M("project_sign");
$model->join("JOIN __PROJECT_USER__ on s_user_id = pu_id");
$model->join("JOIN __PROJECT_TEAM__ on s_team_id = t_id");
$model->join("JOIN __PROJECT__ on s_project_id = p_id");
$model->order("s_id desc");
$results = $model->where($where)->select();
$res = array();
foreach($results as $value)
{
if(!isset($res[$value['s_user_id']]['info']))
{
$res[$value['s_user_id']]['info'] = $value;
}
if(!isset($res[$value['s_user_id']]['sign']))
{
$res[$value['s_user_id']]['sign'] = array_pad(array(),32,"");
unset($res[$value['s_user_id']]['sign'][0]);
}
$res[$value['s_user_id']]['sign'][$value['s_day']] = "是";
$res[$value['s_user_id']]['count']++;
}
$this->results = $res;
$this->display();
}
function excel()
{
header("Content-type: application/vnd.ms-excel; charset=utf8");
header("Content-Disposition: attachment; filename=filename.xls");
$this->lists();
}
由于导出的excel 不用css 所以直接写一个 纯表格的view
编号 | 姓名 | 工种 | 合计 | |||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | ||||
点击导出后显示
相关推荐: