您当前的位置: 首页 > 网站编程 > PHP教程 > header导出Excel应用示例

header导出Excel应用示例

作者:不详 来源:网络 发布时间: 2014-08-07 18:25 点击:
本文为大家介绍下使用header导出Excel,具体实现代码如下,感兴趣的朋友不要错过 代码如下: ?php class reportFormAction extends CommonAction{ public function index(){ if($_POST){ //@param $data array 需要导出的数据 //@param $field string 导出csv文件的列名

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();

  }

  }

  ?>
分享到:
本文"header导出Excel应用示例"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4