PHP将表格导出为EXCEL格式

匿名 (未验证) 提交于 2019-12-02 22:11:45

话不多说上干活

public function downloadMatchDataAction()
{

    // 要下载的信息     $user = new UserModel();     $sql = "SELECT id,name,age,sex ORDER BY age DESC LIMIT 0,100";     $list = $user->query($sql);//这里可以理解为查出来的二维数组     $th = ['编号','姓名','年龄','性别'];     $datas = array();//定义空数组,用来装自己想要的数据格式     foreach($list as $key => $val){         $datas[$key][] = $val["id"];         $datas[$key][] = $val["name"];         $datas[$key][] = $val["age"];         $datas[$key][] = $val["sex"];     }    //解释一下这个循环,$datas为二维数组,$key为$list的键,将$list里面的键变为$datas里面的键最后再给这个键附上我刚才查询的值     $this->outCsvTableAction('match',$th,$datas);//这里注意,指的是调用累内该方法     exit;//我这里我选择了退出因为导出并下载我已经完成了,做完以后还需要做记录请自行修改。 } 

/**
nameҪth 表头表标题
datas/publicfunctionoutCsvTableAction(name, th,datas){
header(“Content-type:text/csv”);
header(“Content-Disposition:attachment;filename=” . date(‘Ymd’) . ‘_’.name..csv);header(CacheControl:mustrevalidate,postcheck=0,precheck=0);header(Expires:0);header(Pragma:public);str = ”;
foreach (thasvalue) {
str.=iconv(utf8,gb2312,value).’,’;
//解释下这个函数 : iconv(输入的字符集,输出的字符集,要转换的字符串)
}
str=rtrim(str,’,’);
str.=\n;foreach(datas as v)$str.=\t;foreach($vas$v1)$str.=iconv("utf8","gb2312",$v1).,;$str=rtrim($str,,);$str.=\n;die(str);
}

以上

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!