PHP讀取Excel類文件
想要使用PHP讀取Excel文件必然要用到PHPExcel開源類庫,網(wǎng)上資源應(yīng)該挺多的。但是每一種的操作必然都是不同的,可原理應(yīng)該都是大同小異。
這個(gè)文件夾里包含的就是PHPExcel類文件

,在外面還有一個(gè)入口PHP文件

處理機(jī)制: 1.讀取Excel文件
2.獲取最大行號(hào)和最大列號(hào)
3.通過行數(shù)循環(huán)里面嵌套列數(shù)循環(huán)來用特殊符號(hào)拼接每個(gè)小表格里面的數(shù)據(jù)得到一個(gè)字符串
4.然后使用explode拆分函數(shù)將字符串拆分后就得到了一個(gè)二維數(shù)組(即表格里面的數(shù)據(jù))。
代碼示例
$path = "/wamp/www/xiong/hadf";
if(is_dir($path)){
echo "存在";
}else{
mkdir($path, 0777, true);
echo "chuangji";
}
require_once"./PHPExcel.php";
$filePath = "./1233.xlsx";
$PHPReader = new PHPExcel_Reader_Excel2007();
if(!$PHPReader->canRead($filePath)) {
$PHPReader = new PHPExcel_Reader_Excel5();
if(!$PHPReader->canRead($filePath)) {
echo 'no Excel';
exit;
}
}
$PHPExcel = $PHPReader->load($filePath);
/**讀取excel文件中的第一個(gè)工作表*/
$currentSheet = $PHPExcel->getSheet(0);
/**取得最大的列號(hào)*/
$allColumn = $currentSheet->getHighestColumn();
// echo $allColumn;exit;
/**取得一共有多少行*/
$allRow = $currentSheet->getHighestRow();
/**從第二行開始輸出,因?yàn)閑xcel表中第一行為列名*/
$val = '';
for($currentRow = 1; $currentRow <= $allRow; $currentRow++) {
/**從第A列開始輸出*/
for($currentColumn = 'A'; $currentColumn <= $allColumn; $currentColumn++) {
$val .= $currentSheet->getCellByColumnAndRow(ord($currentColumn) - 65,$currentRow);//->getValue();/**ord()將字符轉(zhuǎn)為十進(jìn)制數(shù)*/
$val .= "&%|%&";
/**如果輸出漢字有亂碼,則需將輸出內(nèi)容用iconv函數(shù)進(jìn)行編碼轉(zhuǎn)換,如下將GBK編碼轉(zhuǎn)為UTF-8編碼輸出*/
//$val .= iconv('GBK','UTF-8', $val);
}
$val .= "\n";
}$member_info_arr = explode("\n", $val);
unset($member_info_arr[count($member_info_arr) - 1]);
$present_time = date("Y-m-d H:i:s");
if(count($member_info_arr) <= 0) {
sys_msg_json(0, "會(huì)員信息文件中無數(shù)據(jù),請(qǐng)?zhí)砑?);
}
unset($member_info_arr[0]);
// var_dump($member_info_arr);exit;
foreach ($member_info_arr as $key => $val) {
$arr[$key] = explode("&%|%&",$val);
}
// var_dump($arr);exit;
foreach ($arr as $key => $val) {
unset($arr[$key][2]);
}
var_dump($arr);
以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時(shí)也希望多多支持腳本之家!
- PHP實(shí)現(xiàn)類似于C語言的文件讀取及解析功能
- php讀取二進(jìn)制流(C語言結(jié)構(gòu)體struct數(shù)據(jù)文件)的深入解析
- php簡單讀取.vcf格式文件的方法示例
- php 寫入緩存文件、讀取緩存文件的函數(shù)代碼
- PHP讀取CSV大文件導(dǎo)入數(shù)據(jù)庫的實(shí)例
- PHP讀取XML格式文件的方法總結(jié)
- php刪除txt文件指定行及按行讀取txt文檔數(shù)據(jù)的方法
- PHP讀取zip文件的方法示例
- php遍歷、讀取文件夾中圖片并分頁顯示圖片的方法
- PHP讀取、解析eml文件及生成網(wǎng)頁的方法示例
相關(guān)文章
php基礎(chǔ)知識(shí):控制結(jié)構(gòu)
php基礎(chǔ)知識(shí):控制結(jié)構(gòu)...2006-12-12
SQL server不支持utf8 php卻用utf8的矛盾問題解決方法
這篇文章主要介紹了SQL server不支持utf8 php卻用utf8的矛盾問題解決方法,需要的朋友可以參考下2020-03-03
php一維二維數(shù)組鍵排序方法實(shí)例總結(jié)
這篇文章主要介紹了php一維二維數(shù)組鍵排序方法,以實(shí)例形式總結(jié)了針對(duì)一維數(shù)組的冒泡排序與使用array_multisort()對(duì)二位數(shù)組按照指定鍵值排序等方法,具有不錯(cuò)的參考借鑒價(jià)值,需要的朋友可以參考下2014-11-11
PHP中new static() 和 new self() 的區(qū)別介紹
這篇文章主要介紹了PHP中new static() 和 new self() 的區(qū)別介紹,需要的朋友可以參考下2015-01-01
PHP創(chuàng)建文件及寫入數(shù)據(jù)(覆蓋寫入,追加寫入)的方法詳解
這篇文章主要介紹了PHP創(chuàng)建文件及寫入數(shù)據(jù)(覆蓋寫入,追加寫入)的方法,結(jié)合實(shí)例形式總結(jié)分析了php文件創(chuàng)建、寫入操作相關(guān)函數(shù)使用技巧,需要的朋友可以參考下2019-02-02
解決更換PHP5.4以上版本后Dedecms后臺(tái)登錄空白問題的方法
為什么會(huì)出現(xiàn)更換PHP5.4以上版本后Dedecms后臺(tái)登錄空白的情況,本文將給大家詳細(xì)分析,找出真正原因以及解決辦法。2015-10-10
php線性表順序存儲(chǔ)實(shí)現(xiàn)代碼(增刪查改)
php實(shí)現(xiàn)線性表順序存儲(chǔ)的代碼,需要的朋友可以參考下2012-02-02
PHP中substr()與explode()函數(shù)用法分析
這篇文章主要介紹了PHP中substr()與explode()函數(shù)用法分析,以實(shí)例的形式較為詳細(xì)的講述了substr()與explode()函數(shù)處理字符串的技巧,是字符串操作中使用頻率比較高的函數(shù),具有一定的實(shí)用價(jià)值,需要的朋友可以參考下2014-11-11

