使用PHPExcel導出文件
首先看看上面的文章,寫入方法一樣,只是中間多了數據庫的操作,後面還有excel浏覽器輸出。
數據庫代碼(數據庫配置文件自行完成)
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;
}
}
數據庫導出代碼:
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');
}
