php如何将数据导出成excel表格呢?

原创文章引自(https://www.ympfb.com/show-30-61-1.html)
php 开发导出excel表格,代码如何写呢?今天给大家分享这个,
我们想做的是 把数据库里的数据导出,导出成excel表格,按照我们的规则导出成我们想要的样子,下面直接给大家上源码,

php如何将数据导出成excel表格呢?

这个是具体的逻辑代码


 $list = Db::table('form')->where('create_time', '>', $stat_time)->select()
      ->where('create_time','<',$end_time);
  if(empty($list)){
   echo "<script>alert('暂时无数据');window.history.back();</script>";
            exit();
  }
  //dump($list);die;
  foreach ($list as $key => $value) {
            $tuij=Db::table('form')->where('id',$value['id'])->find();
            $arr[$key]['username']=$tuij['username'];
            $arr[$key]['phone']=$tuij['phone'];
            $arr[$key]['source']=$tuij['source'];
            $arr[$key]['text']=$value['text'];
            $arr[$key]['create_time']=$value['create_time'];
        }
        if(empty($list)){
            echo "<script>alert('暂时无数据');window.history.back();</script>";
            exit();
        }
        //$list为所需要导出的数据
        $header=array('姓名','电话','来源','留言','提交时间');
        $index=array('username','phone','source','text','create_time');
        $filename="表单落地页有效推广";
        $this->createtable($arr,$filename,$header,$index);
}

上面的代码中 最后一行 提到了一个方法createtable,这个是一个公共方法,大家可以放到公共类里,也可以直接放在这个类里,下面是源码


/**
     * 导出公共方法
     *
     * @return \think\Response
     */
function createtable($list,$filename,$header,$index){ 
        header("Content-type:application/vnd.ms-excel"); 
        header("Content-Disposition:filename=".$filename.".xls"); 
        $teble_header = implode("\t",$header);
        $strexport = $teble_header."\r";
        foreach ($list as $row){ 
            foreach($index as $val){
                $strexport.=$row[$val]."\t";  
            }
            $strexport.="\r";

        } 
        $strexport=iconv('UTF-8',"GB2312//IGNORE",$strexport); 
        exit($strexport);
    }
``````php
本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!