根據(jù)下列編碼程序可以。
在長(zhǎng)樂等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站制作、成都做網(wǎng)站 網(wǎng)站設(shè)計(jì)制作按需規(guī)劃網(wǎng)站,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站建設(shè),營(yíng)銷型網(wǎng)站建設(shè),成都外貿(mào)網(wǎng)站制作,長(zhǎng)樂網(wǎng)站建設(shè)費(fèi)用合理。
1./*** 批量導(dǎo)出數(shù)據(jù)* @param $arr 從數(shù)據(jù)庫(kù)查詢出來(lái),即要導(dǎo)出的數(shù)據(jù)* ?$name excel表歌名*/
2.function expExcel($arr,$name){?require_once 'PHPExcel.php';
3. //實(shí)例化?$objPHPExcel = new PHPExcel();?/*右鍵屬性所顯示的信息*/
4.$objPHPExcel-getProperties()-setCreator("zxf") ?//?-setLastModifiedBy("zxf") ?//最后一? -setTitle('數(shù)據(jù)EXCEL導(dǎo)出') ?//標(biāo)題-setSubject('數(shù)據(jù)EXCEL導(dǎo)出') //主題setDescription('導(dǎo)出數(shù)據(jù)') ?//描setKeywords("excel") ? //標(biāo)記setCategory("result file"); ?//類別
5. //設(shè)置當(dāng)前的表格??$objPHPExcel-setActiveSheetIndex(0);// 設(shè)置表格第一行顯示內(nèi)容$objPHPExcel-getActiveSheet()? -setCellValue('A1', '業(yè)主姓名')?-setCellValue('B1', '密碼')-setCellValue('C1', '手機(jī)號(hào)碼'? -setCellValue('D1', '地址')
6.//設(shè)置第一行為紅色字體?-getStyle('A1:D1')-getFont()-getColor()-setARGB(PHPExcel_Style_Color::COLOR_RED);$key = 1;?/*以下就是對(duì)處理Excel里的數(shù)據(jù)。
講的復(fù)雜了啊!\x0d\x0a你先在一個(gè)完整版的PHPExcel之后解壓,在“Examples”目錄下會(huì)找到一大堆例子,根據(jù)你的要求這個(gè)“01simple-download-xlsx.php”文件就可以了!\x0d\x0a注:你先保持“01simple-download-xlsx.php”文件所在的目錄位置不要變,測(cè)試好了,再改變名,移到別的地方,地方變了的話,文件里的 “require_once dirname(__FILE__) . '/../Classes/PHPExcel.php';”的所在位置也要變!\x0d\x0a我們要改動(dòng)代碼很少,如下:\x0d\x0a// Add some data\x0d\x0a$objPHPExcel-setActiveSheetIndex(0)\x0d\x0a-setCellValue('A1', 'Hello')\x0d\x0a-setCellValue('B2', 'world!')\x0d\x0a-setCellValue('C1', 'Hello')\x0d\x0a-setCellValue('D2', 'world!');\x0d\x0a\x0d\x0a// Miscellaneous glyphs, UTF-8\x0d\x0a$objPHPExcel-setActiveSheetIndex(0)\x0d\x0a-setCellValue('A4', 'Miscellaneous glyphs')\x0d\x0a-setCellValue('A5', 'éàèùaê?????ü???ü?');\x0d\x0a、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、\x0d\x0a直接用的我的替換\x0d\x0a$objPHPExcel-setActiveSheetIndex(0)//這個(gè)就是現(xiàn)實(shí)導(dǎo)出的表第一行,有幾列是根據(jù)你的那張表有幾列!\x0d\x0a-setCellValue('A1', '單號(hào)')\x0d\x0a-setCellValue('B1', '標(biāo)題')\x0d\x0a-setCellValue('C1', '內(nèi)容')\x0d\x0a-setCellValue('D1', '序列')\x0d\x0a-setCellValue('E1', '數(shù)字');\x0d\x0a//下面實(shí)現(xiàn)的就是建立數(shù)據(jù)庫(kù)連接,直接到表,你的連接數(shù)據(jù)庫(kù)、表、字段應(yīng)該與我的不一樣,你可以參考\x0d\x0a$conn=@mysql_connect("localhost","root","root") or die("數(shù)據(jù)庫(kù)服務(wù)器連接錯(cuò)誤".mysql_error());//連接mysql數(shù)據(jù)庫(kù)\x0d\x0amysql_select_db("temp",$conn) or die("數(shù)據(jù)庫(kù)訪問(wèn)錯(cuò)誤".mysql_error());//數(shù)據(jù)庫(kù)\x0d\x0amysql_query("set character set gb2312");\x0d\x0amysql_query("set names gb2312");\x0d\x0a\x0d\x0a$sqlgroups="select * from test ";//查詢這一張表的條件\x0d\x0a$resultgroups=mysql_query($sqlgroups);\x0d\x0a$numrows=mysql_num_rows($resultgroups);\x0d\x0aif ($numrows0)\x0d\x0a{\x0d\x0a$count=1;\x0d\x0awhile($data=mysql_fetch_array($resultgroups))\x0d\x0a{\x0d\x0a$count+=1;\x0d\x0a$l1="A"."$count";\x0d\x0a$l2="B"."$count";\x0d\x0a$l3="C"."$count";\x0d\x0a$l4="D"."$count";\x0d\x0a$l5="E"."$count";\x0d\x0a$objPHPExcel-setActiveSheetIndex(0) \x0d\x0a-setCellValue($l1, $data['id'])//這就是你要導(dǎo)出表的字段、與對(duì)應(yīng)的名稱\x0d\x0a-setCellValue($l2, $data['title'])\x0d\x0a-setCellValue($l3, $data['content'])\x0d\x0a-setCellValue($l4, $data['sn'])\x0d\x0a-setCellValue($l5, $data['num']);\x0d\x0a}\x0d\x0a}
php導(dǎo)出數(shù)據(jù)excel有專門的庫(kù),當(dāng)導(dǎo)出少量數(shù)據(jù)的時(shí)候速度很快,但是當(dāng)數(shù)據(jù)量大的時(shí)候就會(huì)存在服務(wù)器內(nèi)存不夠之類的。
所以在導(dǎo)出大量數(shù)據(jù)的時(shí)候就應(yīng)該分頁(yè)查詢數(shù)據(jù),避免服務(wù)器宕機(jī)。正好PHP提供了fputcsv函數(shù)可以將數(shù)據(jù)寫入到csv文件中。
這樣我們就可以使用PHP對(duì)數(shù)據(jù)進(jìn)行分頁(yè)查詢,再寫入到csv文件中。