Debug客栈
做一个爱分享的程序猿
Debug客栈
PHP常用函数 原生导出Excel文件

友情提示:此篇文章大约需要阅读 2分钟56秒,不足之处请多指教,感谢你的阅读。订阅本站

近期在项目中做到了导出Excel功能,但是由于项目PHP版本为5.4,网上找了一大堆的插件或扩展由于封装发布版本较新,不支持PHP5.4版本,大多支持PHP7.0以上的版本,并且加上本身需要导出的数量比较少,可以采用下面原生导出Excel方法。

示例代码

/**
 * 创建 Excel 表格
 * @param $list | 需要进行创建Excel的二维数组
 * @param $filename | Excel文件名
 * @param array $header | Excel头部中文名称
 * @param array $index | 对应二维数组中键名
 */
protected function createtable($list,$filename,$header=array(),$index=array()){
    header("'Access-Control-Allow-Origin': '*'");
    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);
}

/**
 * 获取Excel方法函数
 */
public function getExcel(){
    // 使用其封装方法
    $filename = '历史订单记录'.date('YmdHis');
    $header = array('订单ID','用户ID','订单用户电话');
    $index = array('Order_id','User_id','Order_Phone');

    $this->createtable($data,$filename,$header,$index);
}

此处两个方法及封装函数最好放在Class类中,直接调用就可以实现其简单生成Excel文件,是不是很便捷。

赞赏
本文链接:https://www.debuginn.cn/4308.html
本文采用 CC BY-NC-SA 3.0 Unported 协议进行许可,转载请保留此文章链接
相关链接: Debug客栈  |  引导页  |  加入交流群  |  赞助本站  |  @微博  |  @Bilibili  |  @推特  |  @Github
社会主义核心价值观: 富强、民主、文明、和谐、自由、平等、公正、法治、爱国、敬业、诚信、友善

发表评论

textsms
account_circle
email

  • https://secure.gravatar.com/avatar/d219af79b45e5891507fda4c4c2139a0?s=80&r=g
    repostone

    非技术的路过。https://repostone.home.blog/

    2周前回复

Debug客栈

PHP常用函数 原生导出Excel文件
近期在项目中做到了导出Excel功能,但是由于项目PHP版本为5.4,网上找了一大堆的插件或扩展由于封装发布版本较新,不支持PHP5.4版本,大多支持PHP7.0以上的版本,并且加上本身需要导出的…
扫描二维码继续阅读
2019-11-07