PHP导出Excel极简方法,即插即用

本文详细介绍了一种将数据从数据库导出至Excel文件的方法,包括数据查询、格式化及导出过程。提供了PHP代码示例,展示了如何构建Excel文件并设置HTTP头部以确保正确下载。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/*整理导出Excel开始*/
/**
 * @creator Six
 * @data 2018/11/22
 * @desc 数据导出到Excel文件
 * @param $dataSix 需要导出的数据主体
 * @param $tableSix Excel文件主体
 */
public function  exportSix(){
    // header('Content-Type: text/html; charset=utf-8');/*若预览数据时编码错误请把此项解除注释*/
    // $innerdata=M('product')->where('status=1')->select();/*从数据库查询,按需自定义即可*/
    /*以下为模拟SQL查询的数据*/
    $dataSix=array(
        array('name'=>'张三','sex'=>'男','age'=>'18','score'=>'100'),
        array('name'=>'李四','sex'=>'女','age'=>'19','score'=>'98'),
        array('name'=>'王五','sex'=>'男','age'=>'18','score'=>'100'),
        array('name'=>'赵六','sex'=>'男','age'=>'16','score'=>'66'),
        );
    // var_dump($dataSix);exit;/*需要预览数据时请把此项解除注释*/
    /*以下为拼接的导出Excel的格式和内容,如需要进一步美化,添加H5属性或自定义css样式即可*/
    $tableSix = '';
    $tableSix .= "
        <table border='1'>
            <thead>
                <tr>
                    <th>姓名</th>
                    <th>性别</th>
                    <th>年龄</th>
                    <th>成绩 </th>
                </tr>
            </thead>
            <tbody>";
    foreach ($dataSix as $six) {
        $tableSix .= "
            <tr>
                <td>{$six['name']}</td>
                <td>{$six['sex']}</td>
                <td>{$six['age']}</td>
                <td>{$six['score']}</td>
            </tr>";
    }
    $tableSix .= "</tbody></table>";
    /*通过header头控制输出excel表格*/
    header("Pragma: public");  
    header("Expires: 0");  
    header("Cache-Control:must-revalidate, post-check=0, pre-check=0");  
    header("Content-Type:application/force-download");  
    header("Content-Type:application/vnd.ms-execl");  
    header("Content-Type:application/octet-stream");  
    header("Content-Type:application/download");;  
    header('Content-Disposition:attachment;filename="成绩表.xls"');/*此处为表名,按需自定义*/
    header("Content-Transfer-Encoding:binary");  
    echo $tableSix;
}
/*整理导出Excel结束*/

欢迎交流与指教 :)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值