一个php文件就可以把数据库的数据导出Excel表格

13

数据库内容太多,复制粘贴太麻烦?
那就用代码实现把,把代码写好了,导出还不容易吗,访问即可导出。

excel.php

<?php
    error_reporting(E_ALL ^ E_DEPRECATED);
    $localhost = '数据库地址';
    $dbname = '数据库名';
    $dbuser = '数据库账号';
    $dbpwd = '数据库密码';
    $tbname = "需要导出的数据库表名";

    ob_end_clean();
    header('Content-type: text/html; charset=utf-8');
    header("Content-type:application/vnd.ms-excel;charset=UTF-8"); 
    header("Content-Disposition:filename=data.xls");// 文件名自己改,默认data.xls

    $conn = mysql_connect($localhost,$dbuser,$dbpwd) or die("连接数据库失败");
    mysql_select_db($dbname, $conn);
    mysql_query("set names 'UTF-8'");

    $result=mysql_query("SELECT * FROM $tbname");
    echo "<table>";
    echo "<tr>";
    echo "<th>A1单元格</th>";
    echo "<th>B1单元格</th>";
    echo "<th>C1单元格</th>";
    echo "<th>D1单元格</th>";
    echo "</tr>";
    echo "</table>";
    while($row=mysql_fetch_array($result)){
        //下面data改成你自己数据库对应的字段
        $data1 = $row["data1"];
        $data2 = $row["data2"];
        $data3 = $row["data3"];
        $data4 = $row["data4"];
        
        //输出字段的数据到单元格
        //下面data改成你自己数据库对应的字段
        echo "<table>";
        echo "<tr>";
            echo "<td>$data1</td>";
            echo "<td>$data2</td>";
            echo "<td>$data3</td>";
            echo "<td>$data4</td>";
        echo "</tr>";
        echo "</table>";
    }
?>

然后访问excel.php就可以弹出表格下载了。
作者:TANKING
网站:likeyunba.com
微信:likeyunba520

你可能感兴趣的

黑白灰 · 2018年12月28日

不用excel扩展也可以?

回复

0

不需要

TANKING 作者 · 2018年12月28日
东方皓 · 2018年12月29日

100万条数据不到就让你卡死

回复

0

这种情况只能分开弄了。

TANKING 作者 · 2018年12月29日
Tuesday · 2018年12月29日

为什么不直接用导出csv? 10GB都可以导成功.

回复

独自行走的蚂蚁 · 2018年12月29日

输出的格式不对吧

回复

vishun · 2018年12月31日

随便个可视化工具都有这个功能吧。

回复

Yybei · 5月29日

你好,我尝试了一下,发现输出的数据如果包含中文,Excel里面中文会变成“?” 。所以想请教一下,有什么解决办法

回复

载入中...