读取数据库并生成excel文件--PHPExcel

参考:http://www.discuz.net/home.php?mod=space&do=blog&uid=418112&id=62669

 

PHPExcel官网:http://www.codeplex.com/PHPExcel  

先去官网上把所需的包下载下来,解压之后,只要Classes下的内容即可,其它的全是demo

 

接下来先看个简单的例子,

 

 

<?php 
include "lib/PHPExcel/Writer/IWriter.php"; 
include "lib/PHPExcel/Writer/Excel5.php"; 
require_once 'lib/PHPExcel.php';
include 'lib/PHPExcel/IOFactory.php'; 
//上面的四句代码是引入所需要的库,

$a1 = '分类ID';  //这是两个标头  就是列名,最上面的那个
$a2 = '分类名称';
//$a1=iconv("utf-8","gb2312",$a1);  //如果是乱码的话,则需要转换下
//$a2=iconv("utf-8","gb2312",$a2);
$objPHPExcel->getActiveSheet()->setCellValue('a1', "$a1");设置列的值
$objPHPExcel->getActiveSheet()->setCellValue('b1', "$a2");
$con = mysql_connect('localhost','root','123') or die('数据库连接失败');
mysql_select_db('lxx');
mysql_query('set NAMES utf8');
$result = mysql_query('select * from t_category');//连接数据库的就不用多解释了
$i = 2; 自增变量,用来控制行,因为标头占的第一行,所以这里从第二行开始
while($arr = mysql_fetch_array($result)){
	$id = $arr['categoryid'];
	$cname = $arr['cname'];
	//$i++;	
	//$id=iconv("utf8","gb2312",$id);
	//$cname = iconv("utf8","gb2312",$cname);
	$objPHPExcel->getActiveSheet()->setCellValue('a'.$i, "$id");
	$objPHPExcel->getActiveSheet()->setCellValue('b'.$i, "$cname");//这些跟上面的一样,开始一行一行的赋值。
	$i++;	
}
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(30);//设置宽度
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(12);

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');  //创建表格类型,目前支持老版的excel5,和excel2007,也支持生成html,pdf,csv格式
$objWriter->save(str_replace('.php', '.xls', __FILE__));//保存生成
?>

 

 

这个只是简单的应用。以后会继续研究下相关的复杂操作。

 

最近用到这部分了,没办法,只好硬着头皮研究了

你可能感兴趣的:(phpexcel)