這篇文章主要介紹“php查詢及導出excel的方法是什么”,在日常操作中,相信很多人在php查詢及導出excel的方法是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”php查詢及導出excel的方法是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
我們提供的服務有:成都網(wǎng)站建設、成都網(wǎng)站設計、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、懷柔ssl等。為上千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的懷柔網(wǎng)站制作公司
一、PHP查詢數(shù)據(jù)庫
在PHP中,查詢數(shù)據(jù)庫并獲取數(shù)據(jù)的過程,需要先連接數(shù)據(jù)庫,然后選擇數(shù)據(jù)庫,最后是執(zhí)行SQL語句。與普通的SQL語句相比,PHP中的SQL語句需要進行轉義以防止SQL注入攻擊。
連接數(shù)據(jù)庫的函數(shù)為MySQLi_connect(),包含四個參數(shù),分別是:主機名、用戶名、密碼和數(shù)據(jù)庫名。如果連接失敗會返回false,否則會返回一個數(shù)據(jù)庫連接對象。
$conn = mysqli_connect($servername, $username, $password, $dbname);
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
選擇數(shù)據(jù)庫的函數(shù)為mysqli_select_db(),包含兩個參數(shù),分別是:數(shù)據(jù)庫連接對象和數(shù)據(jù)庫名。
mysqli_select_db($conn, $dbname);
執(zhí)行SQL語句的函數(shù)為mysqli_query(),包含兩個參數(shù),分別是:數(shù)據(jù)庫連接對象和SQL語句。
$sql = "SELECT * FROM `table1`";
$result = mysqli_query($conn, $sql);
執(zhí)行完以上三個步驟,$result對象將包含所有查詢到的數(shù)據(jù)。
二、PHP導出Excel
PHP導出Excel有多種方法,本文介紹其中一種較為簡單的方法。處理Excel需要用到PHPExcel庫,需要先安裝該庫才能進行Excel文件的讀寫操作。
可以通過Composer安裝PHPExcel庫:
composer require phpoffice/phpexcel
或者手動下載最新版本壓縮包:
https://github.com/PHPOffice/PHPExcel/releases
解壓后將Classes文件夾放到項目目錄中,然后引入PHPExcel庫:
require_once 'Classes/PHPExcel.php';
Excel表格主要是由“工作簿”、“工作表”和“單元格”三個部分組成。PHPExcel中封裝了很多類和方法,可以輕松地創(chuàng)建、編輯和保存Excel表格。以下是一個簡單的例子:
//創(chuàng)建PHPExcel對象
$objPHPExcel = new PHPExcel();
//設置工作簿屬性
$objPHPExcel->getProperties()
->setCreator("Creator")
->setLastModifiedBy("Last Modified By")
->setTitle("Title")
->setSubject("Subject")
->setDescription("Description")
->setKeywords("keywords")
->setCategory("Category");
//創(chuàng)建工作表
$objPHPExcel->setActiveSheetIndex(0);
$objPHPExcel->getActiveSheet()->setTitle('Sheet1');
//添加表頭
$objPHPExcel->getActiveSheet()->setCellValue('A1', 'ID');
$objPHPExcel->getActiveSheet()->setCellValue('B1', 'Name');
$objPHPExcel->getActiveSheet()->setCellValue('C1', 'Age');
$objPHPExcel->getActiveSheet()->setCellValue('D1', 'Gender');
//循環(huán)添加數(shù)據(jù)
$i = 2;
while ($row = mysqli_fetch_assoc($result)) {
$objPHPExcel->getActiveSheet()->setCellValue('A' . $i, $row['id']);
$objPHPExcel->getActiveSheet()->setCellValue('B' . $i, $row['name']);
$objPHPExcel->getActiveSheet()->setCellValue('C' . $i, $row['age']);
$objPHPExcel->getActiveSheet()->setCellValue('D' . $i, $row['gender']);
$i++;
}
//設置列寬度
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(10);
//設置單元格格式
$objPHPExcel->getActiveSheet()->getStyle('A1:D1')->getFont()->setBold(true);
//將表格導出為Excel文件
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="export.xlsx"');
header('Cache-Control: max-age=0');
$objWriter->save('php://output');
exit;
該例中,先創(chuàng)建了一個PHPExcel對象,設置了工作簿和工作表屬性,添加了表頭和數(shù)據(jù),然后設置了列寬度和單元格格式。
最后通過PHPExcel_IOFactory類中的createWriter()方法將PHPExcel對象的數(shù)據(jù)導出為Excel文件。在導出之前需設置正確的MIME類型、文件名和緩存控制頭。
到此,關于“php查詢及導出excel的方法是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
當前文章:php查詢及導出excel的方法是什么
文章鏈接:http://jinyejixie.com/article14/ipjhge.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供關鍵詞優(yōu)化、品牌網(wǎng)站設計、云服務器、品牌網(wǎng)站建設、網(wǎng)站收錄、網(wǎng)站建設
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)