phpExcel讀取excel文件

巴扎黑
發布: 2016-11-22 16:56:32
原創
2183 人瀏覽過

之前的部落格文章已經對PHPExcel匯出excel檔案做了簡單的總結,現對他讀取excel做以下總結。 (資料量不會很大的建置可以採用web直接用此方法讀取,如果資料量會很大的話,還是建議web只做上傳功能,讀取、處理還是放後台吧。PHPExcel還是比較耗費時間、記憶體的。

   PHPExcel讀取EXCEl文件中,如果單元格中的內容有兩種字體時,讀到的是富文本的對象:例如:單元格中有內容:“測試1”,其中前半部分的“測試」字體為宋體,後半部的「1」字體為Calibri,此時透過

    $cell = $sheet->getCell($addr)->getValue();

取得單元格的值。並且列印:

//首先导入PHPExcel
require_once 'PHPExcel.php';
$filePath = "test.xlsx";
//建立reader对象
$PHPReader = new PHPExcel_Reader_Excel2007();
if(!$PHPReader->canRead($filePath)){
    $PHPReader = new PHPExcel_Reader_Excel5();
    if(!$PHPReader->canRead($filePath)){
        echo 'no Excel';
        return ;
    }
}
//建立excel对象,此时你即可以通过excel对象读取文件,也可以通过它写入文件
$PHPExcel = $PHPReader->load($filePath);
/**读取excel文件中的第一个工作表*/
$currentSheet = $PHPExcel->getSheet(0);
/**取得最大的列号*/
$allColumn = $currentSheet->getHighestColumn();
/**取得一共有多少行*/
$allRow = $currentSheet->getHighestRow();
//循环读取每个单元格的内容。注意行从1开始,列从A开始
for($rowIndex=1;$rowIndex<=$allRow;$rowIndex++){
    for($colIndex=&#39;A&#39;;$colIndex<=$allColumn;$colIndex++){
        $addr = $colIndex.$rowIndex;
$cell = $currentSheet->getCell($addr)->getValue();
        if($cell instanceof PHPExcel_RichText)     //富文本转换字符串
$cell = $cell->__toString();
            
        echo $cell;
    
    }
}
登入後複製

可以看到對這樣的單元格不能直接讀取單元格的文字內容。 (註:這裡的富文本是我自己的翻譯,不知對否)。

另外,讀取單元格的函數還有:

//列從0開始,行從1開始

$currentSheet ->getCellByColumnAndRow($colIndex,$rowIndex)->getCellByColumnAndRow($colIndex,$rowIndex)->geto();

相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板