从mysql读取数据保存成excel_从Mysql数据库读取数据批量导入到Excel文件

本文介绍了如何从MySQL数据库读取数据并将其保存为Excel文件。通过PHPExcel库,实现查询SQL,设置表头,循环遍历数据并填充到Excel表格,最后设置文件名和导出格式,实现在浏览器中下载Excel文件。
摘要由CSDN通过智能技术生成

本篇和上篇类型,只是顺序发生了变化——从Mysql度数据并保存到Excel中。

导出XLS流程:读取数据库的表->循环记录构建制表符分隔的字段信息->设置header信息->导出文件(下载)到本地。

下面直接分享代码,导出文件outdb.php如下:

require_once './PHPExcel.php'; //路径根据自己实际项目的路径进行设置

//下面是对mysql数据库的连接

require_once './conn.php';

$objPHPExcel = new PHPExcel(); //创建PHPExcel实例

$sql = mysql_query("select * from php_excel order by Id asc"); //查询sql语句

if (!$sql) echo "SQL错误:".mysql_error();

/*--------------设置表头信息------------------*/

$objPHPExcel->setActiveSheetIndex(0)

->setCellValue('A1', '编号')

->setCellValue('B1', '学号')

->setCellValue('C1', '姓名')

->setCellValue('D1', '年龄');

/*--------------开始从数据库提取信息插入Excel表中------------------*/

$i=2; //定义一个i变量,目的是在循环输出数据是控制行数

while($rs = mysql_fetch_array($sql)){

//$rm = iconv("GB2312","UTF-8",$rs[1]); //对字符进行编码将数据库里GB2312的中文字符转换成UTF-8格式

$objPHPExcel->setActiveSheetIndex(0)

->setCellValue("A".$i, $rs[0])

->setCellValue("B".$i, $rs[1])

->setCellValue("C".$i, $rs[2])

->setCellValue("D".$i, $rs[3]);

$i++;

}

/*--------------下面是设置其他信息------------------*/

$date = date('Y-m-d-His');

$objPHPExcel->getActiveSheet()->setTitle($date.'sheet'); //设置sheet的名称

$objPHPExcel->setActiveSheetIndex(0); //设置sheet的起始位置

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); //通过PHPExcel_IOFactory的写函数将上面数据写出来

//$objWriter->save(str_replace('.php', '.xls', __FILE__)); //设置以什么格式保存,及保存位置

//$objWriter->save('php://output');

//实现在下载时浏览器和用户的交互

$outputFileName = "jcb-$date.xls";

header("Content-Type: application/force-download");

header("Content-Type: application/octet-stream");

header("Content-Type: application/download");

header('Content-Disposition:inline;filename="'.$outputFileName.'"');

header("Content-Transfer-Encoding: binary");

header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");

header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");

header("Cache-Control: must-revalidate, post-check=0, pre-check=0");

header("Pragma: no-cache");

$objWriter->save('php://output');

至此,从Mysql数据库读取数据批量导入到Excel文件 完成。

学无止境,愿每天都进步一点点~~~

0818b9ca8b590ca3270a3433284dd417.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值