header导出Excel应用示例 |
本文标签:header,导出Excel 复制代码 代码如下: <?php class reportFormAction extends CommonAction{ public function index(){ if($_POST){ //@param $data array 需要导出的数据 //@param $field string 导出csv文件的列名 //@param $filename string 需要导出csv文件的名字 $where = 1; $order = creative_id desc; if($_POST[crea_wh] == 1) $order .= ""; if($_POST[crea_wh] == 2) $order .= "creative_time desc"; $star = strtotime($_POST[control_star]); $end = strtotime($_POST[control_end]); if($star && $end) $where .= " and (create_time between $star and $end)"; if($_POST[creative_type] == 1) $where .= " and creative_type =1"; if($_POST[creative_type] == 2) $where .= " and creative_type =2"; if($_POST[creative_type] == 3) $where .= " and creative_type =3"; if($_POST[sort_name] == 1) $where .= " and sort_name = 技术类"; if($_POST[sort_name] == 2) $where .= " and sort_name = 包装类"; if($_POST[sort_name] == 3) $where .= " and sort_name = 产品类"; if($_POST[sort_name] == 4) $where .= " and sort_name = 营销类"; if($_POST[sort_name] == 5) $where .= " and sort_name = 其他类"; if($_POST[two_status]==0) {$where .= " and two_status=0"; $fenlei1="一句话创意";} if($_POST[two_status]==1) {$where .= " and two_status=1"; $fenlei2="标准创意";} $csv = ; $lists = M(creative)->where($where)->order($order)->select(); if(is_array($lists) && count($lists)>0) { if(empty($filename)) { $filename = date(Y-m-d,time())..csv; } header(Content-type:application/vnd.ms-excel); header(Content-Disposition:attachment;filename=.$filename); header(Pragma:no-cache); header(Expires:0); if($_POST[two_status]==0){ $csv= 分类,创意ID,创意类型,创意标签,创意标题,创意描述,评论数, 收藏数,投票数,提交人,作者."\n"; }elseif($_POST[two_status]==1){ $csv= 分类,创意ID,创意类型,创意标签,创意标题,创意描述,评论数, 收藏数,投票数,提交人,作者,合作者,核心创新点说明,市场计划,已有类似商业化案例,相关专利状况,实现方式讨论,发表时间."\n"; }else{ $csv= 分类,创意ID,创意类型,创意标签,创意标题,创意描述,评论数, 收藏数,投票数,提交人,作者,合作者,核心创新点说明,市场计划,已有类似商业化案例,相关专利状况,实现方式讨论,发表时间."\n"; } foreach($lists as $list =>$v) { if($v[creative_type] == 1){ $type = 问题; }elseif($v[creative_type] == 2){ $type = 解决方式; }elseif($v[creative_type] == 3){ $type = 新创意; } if($v[two_status]==0) $fenlei="一句话创意"; if($v[two_status]==1) $fenlei="标准创意"; if($_POST[two_status]==0){ //一句话 $csv .= $fenlei1.,.$v[creative_id].",".$v[sort_name].,.$type.,.$v[creative_name].,.$v[creative_description].,.$v[comment_num].,.$v[collect_num].,.$v[vote_num].,.$v[submitter].,.$v[author]."\n"; }elseif($_POST[two_status]==1){ //标准 $csv .= $fenlei2.,.$v[creative_id].",".$v[sort_name].,.$type.,.$v[creative_name].,.$v[creative_description].,.$v[comment_num].,.$v[collect_num].,.$v[vote_num].,.$v[submitter].,.$v[author].,.$v[collaborator].,.$v[innovation_description].,.$v[marketing_plan].,.$v[business_case].,.$v[patent_situation].,.$v[discuss_ways].,.strtotime($v[create_time])."\n"; }else{ //全部 $csv .= $fenlei.,.$v[creative_id].",".$v[sort_name].,.$type.,.$v[creative_name].,.$v[creative_description].,.$v[comment_num].,.$v[collect_num].,.$v[vote_num].,.$v[submitter].,.$v[author].,.$v[collaborator].,.$v[innovation_description].,.$v[marketing_plan].,.$v[business_case].,.$v[patent_situation].,.$v[discuss_ways].,.strtotime($v[create_time])."\n"; } } echo mb_convert_encoding($csv,"CP936","UTF-8"); }else{ $this->assign("msg",$msg); } exit; } $this->display(); } public function votecount(){ if($_POST){ //@param $data array 需要导出的数据 //@param $field string 导出csv文件的列名 //@param $filename string 需要导出csv文件的名字 $where = 1; if($_POST[crea_order] == 1) $order = " c.vote_num desc"; $star = strtotime($_POST[control_star]); $end = strtotime($_POST[control_end]); if($star && $end) $where .= " and (c.vote_start_time between $star and $end) and (c.vote_end_time between $star and $end)"; $sql ="select c.sort_name,c.creative_id,c.creative_type,c.creative_name,c.creative_description,c.vote_num,c.comment_num,c.collect_num,c.create_time, u.username from cofco_creative as c left join cofco_userinfo as u on c.uid = u.uid where $where order by $order "; $lists = M()->query($sql); $csv = ; if(is_array($lists) && count($lists)>0) { if(empty($filename)) { $filename = date(Y-m-d,time())..csv; } header(Content-type:application/vnd.ms-excel); header(Content-Disposition:attachment;filename=.$filename); header(Pragma:no-cache); header(Expires:0); $csv = 创意标签,提交者,创意分类,创意标题,创意简述,得票数,评论数, 收藏数,上传时间."\n"; foreach($lists as $list =>$v) { if($v[creative_type] == 1){ $type = 问题; }elseif($v[creative_type] == 2){ $type = 解决方式; }elseif($v[creative_type] == 3){ $type = 新创意; } $time = date("Y-m-d H:i:s",$v[create_time]); $csv .= $v[sort_name].,.$v[username].,.$type.,.$v[creative_name].,.$v[creative_description].,.$v[vote_num].,.$v[comment_num].,.$v[collect_num].,.$time."\n"; } echo mb_convert_encoding($csv,"CP936","UTF-8"); }else{ $this->assign("msg",$msg); } exit; } $this->display(); } } ?> |