PHP5.6讀寫(xiě)excel表格文件操作示例
本文實(shí)例講述了PHP5.6讀寫(xiě)excel表格文件操作。分享給大家供大家參考,具體如下:
測(cè)試環(huán)境:php5.6.24.這塊沒(méi)啥兼容問(wèn)題。
需要更多栗子,請(qǐng)看PHPExcel的examples。還是蠻強(qiáng)大的。
讀取excel文件:
第一步、下載開(kāi)源的PHPExcel的類(lèi)庫(kù)文件,官方網(wǎng)站是http://www.codeplex.com/PHPExcel。里面也有很多示例包。
或者從本站下載:http://www.dhdzp.com/codes/194070.html
第二步、讀取的基本代碼示例:
<?php
require_once 'Classes/PHPExcel.php';
require_once 'Classes/PHPExcel/IOFactory.php';
require_once 'Classes/PHPExcel/Reader/Excel5.php';
$file_url = './excel/phpLv.xls';
$objReader = PHPExcel_IOFactory::createReader('Excel5');
$objPHPExcel = $objReader->load($file_url);
//設(shè)置當(dāng)前活動(dòng)的工作表
$objPHPExcel->setActiveSheetIndex(1);
//拿到當(dāng)前活動(dòng)的表。以后操作就用這個(gè)了。勞資才不喜歡鏈?zhǔn)讲僮?,太難看了好不啦
$activeSheet = $objPHPExcel->getActiveSheet();
//當(dāng)前表最大行數(shù)
$highestRow = $activeSheet->getHighestRow();
//當(dāng)前表最大列數(shù)
$highestColumn = $activeSheet->getHighestColumn();
echo "最大列:$highestColumn";
echo "最大行:$highestRow";
echo '<hr/>';
$cell = function ($cell) use ($activeSheet) {
return $activeSheet->getCell("$cell")->getValue();
};
$str1 = $cell('A13');
echo $str1;
exit;
導(dǎo)出excel表格文件:
第一步、同上也是先下載PHPExcel類(lèi)庫(kù)文件。
第二步、導(dǎo)出excel文件的示例代碼:
//--------------------------------導(dǎo)出excel文件--------------------------------
require_once './Classes/PHPExcel.php';
$objPHPExcel=new PHPExcel();
//一些關(guān)于excel文件的描述。在Classes/PHPExcel/DocumentProperties.php中有更多選項(xiàng)
$prop = $objPHPExcel->getProperties();
$prop->setCreator('sweat_xiaoMa');
$prop->setLastModifiedBy('xiaoma');
$prop->setTitle('Office 2007 XLSX Document');
$prop->setSubject('Office 2007 XLSX Document');
$prop->setDescription('Document for Office 2007 XLSX, generated using PHP classes.');
$prop->setKeywords('office 2007 openxml php');
$prop->setCategory('Result file');
//設(shè)置使用的當(dāng)前的工作表的索引
$objPHPExcel->setActiveSheetIndex(0);
//然后就可以設(shè)置單元格上的內(nèi)容了。
$activeSheet = $objPHPExcel->getActiveSheet();
$activeSheet->setCellValue('A1','學(xué)號(hào)');
$activeSheet->setCellValue('B1','年級(jí)');
$activeSheet->setCellValue('C1','班級(jí)');
$activeSheet->setCellValue('D1','姓名');
$activeSheet->setCellValue('E1','性別');
//給當(dāng)前使用的工作表設(shè)置標(biāo)題。
$activeSheet->setTitle('工作表1啦啦啦');
//文件名字。下面的header中用到。
$filename = '學(xué)生信息統(tǒng)計(jì)表_'.date('Y-m-dHis');
/*
*生成xlsx文件
*/
// header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
// header('Content-Disposition: attachment;filename="'.$filename.'.xlsx"');
// header('Cache-Control: max-age=0');
// $objWriter=PHPExcel_IOFactory::createWriter($objPHPExcel,'Excel2007');
/*
*生成xls文件
*/
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="'.$filename.'.xls"');
header('Cache-Control: max-age=0');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');
exit;
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《php操作office文檔技巧總結(jié)(包括word,excel,access,ppt)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》、《PHP數(shù)學(xué)運(yùn)算技巧總結(jié)》、《php正則表達(dá)式用法總結(jié)》、《php字符串(string)用法總結(jié)》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
- PHP文件打開(kāi)關(guān)閉及讀寫(xiě)操作示例解析
- php 讀寫(xiě)json文件及修改json的方法
- PHP基于文件鎖解決多進(jìn)程同時(shí)讀寫(xiě)一個(gè)文件問(wèn)題示例
- PHP程序中的文件鎖、互斥鎖、讀寫(xiě)鎖使用技巧解析
- php使用fputcsv()函數(shù)csv文件讀寫(xiě)數(shù)據(jù)的方法
- PHP文件讀寫(xiě)操作相關(guān)函數(shù)總結(jié)
- php中使用PHPExcel讀寫(xiě)excel(xls)文件的方法
- php的SimpleXML方法讀寫(xiě)XML接口文件實(shí)例解析
- php中讀寫(xiě)文件與讀寫(xiě)數(shù)據(jù)庫(kù)的效率比較分享
- 如何在PHP中讀寫(xiě)文件
相關(guān)文章
解讀PHP的Yii框架中請(qǐng)求與響應(yīng)的處理流程
這篇文章主要介紹了PHP的Yii框架中請(qǐng)求與響應(yīng)的處理流程,這也是Yii處理網(wǎng)站后臺(tái)的最基本功能,需要的朋友可以參考下2016-03-03
Excel數(shù)據(jù)導(dǎo)入Mysql數(shù)據(jù)庫(kù)的實(shí)現(xiàn)代碼
當(dāng)配置好PHP運(yùn)行環(huán)境后,接下來(lái)我就開(kāi)始準(zhǔn)備數(shù)據(jù)源了,記得上次沒(méi)有講述Navicat的安裝方法,很簡(jiǎn)單,沒(méi)有什么特別的,一路Next就完畢了。2008-06-06
Lumen timezone 時(shí)區(qū)設(shè)置方法(慢了8個(gè)小時(shí))
今天用 Lumen 框架寫(xiě)代碼時(shí), 也是初次體驗(yàn) Lumen, 遇到了一個(gè)問(wèn)題, 從數(shù)據(jù)庫(kù)里查出的時(shí)間比數(shù)據(jù)庫(kù)里保存的 TIMESTAMP 時(shí)間慢了8個(gè)小時(shí), 很明顯這是一個(gè)時(shí)區(qū)設(shè)置的問(wèn)題, 本以為可以在1分鐘內(nèi)解決的, 但是我錯(cuò)了2018-01-01
100行PHP代碼實(shí)現(xiàn)socks5代理服務(wù)器
這個(gè)例子說(shuō)了in the real world, do something here to ensure clients not running are destroyed 但是,如何把不再運(yùn)行的連接銷(xiāo)毀卻沒(méi)有講。恩。我試了把$clients放到一個(gè)類(lèi)里,把類(lèi)傳給線(xiàn)程類(lèi),然后在線(xiàn)程類(lèi)要結(jié)束時(shí)把$clients里對(duì)應(yīng)的連接給unset掉,無(wú)果。2016-04-04
微信公眾平臺(tái)開(kāi)發(fā)教程①獲取用戶(hù)Openid及個(gè)人信息圖文詳解
這篇文章主要介紹了微信公眾平臺(tái)開(kāi)發(fā)獲取用戶(hù)Openid及個(gè)人信息,結(jié)合圖文形式詳細(xì)分析了微信公眾平臺(tái)獲取用戶(hù)Openid及個(gè)人信息的步驟、操作技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下2019-04-04
PHP中include和require的區(qū)別實(shí)例分析
網(wǎng)上太多關(guān)于PHP中include與require區(qū)別。然而事實(shí)真的如此嗎,今天我們就通過(guò)一個(gè)具體的實(shí)例來(lái)簡(jiǎn)單分析驗(yàn)證下2017-05-05

