首先看看上面的文章,写入方法一样,只是中间多了数据库的操作,后面还有excel浏览器输出。
数据库代码(数据库配置文件自行完成)
<?php
/*db.php*/
require dirname(__FILE__)."/dbconfig.php";
class db{
public $conn = null;
public function __construct($config){
$this->conn=mysql_connect($config['host'],$config['username'],$config['password']) or die(mysql_error());
mysql_select_db($config['database'],$this->conn) or die(mysql_error());
mysql_query("set names ".$config['charset']) or die(mysql_error());
}
public function getResult($sql){
$resource = mysql_query($sql,$this->conn) or die(mysql_error());
$res = array();
while(($row=mysql_fetch_assoc($resource))!=false){
$res[] = $row;
}
return $res;
}
public function getUserinfo(){
$sql = "。。。";
$res = self::getResult($sql);
return $res;
}
}
<?php
$dir = dirname(__FILE__);
require $dir."/db.php";
require $dir."/PHPExcel.php";
$db = new db($phpexcel);
$objPHPExcel = new PHPExcel();
for($i=0; $i<3; $i++){
if($i>0){
$objPHPExcel->createSheet();
}
$objPHPExcel->setActiveSheetIndex($i);
$objSheet = $objPHPExcel->getActiveSheet();
$data = $db->getUserinfo();
$objSheet->setCellValue("A1","编号")->setCellValue("B1","登陆名")
->setCellValue("C1","昵称")->setCellValue("D1","电子邮箱")
->setCellValue("E1","学校")->setCellValue("F1","最后登陆时间");
$j = 2;
foreach ($data as $key => $value) {
# code...
$objSheet->setCellValue("A".$j,$value['id'])->setCellValue("B".$j,$value['user_login'])
->setCellValue("C".$j,$value['user_nicename'])->setCellValue("D".$j,$value['user_email'])
->setCellValue("E".$j,$value['sch_name'])->setCellValue("F".$j,$value['last_login_time']);
$j++;
}
}
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel,"Excel5");
// $objWriter->save($dir.'/export.xls'); //生成excel文件
browser_export("Excel5","browser_excel03.xls"); //浏览器输出
$objWriter->save("php://output");
function browser_export($type, $filename){
if($type == "Excel5"){
header('Content-Type: application/vnd.ms-excel'); //excel2003
}else{
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); //excel2007
}
header('Content-Disposition: attachment;filename="'.$filename.'"');
header('Cache-Control: max-age=0');
}
运行截图: