確定這樣PHPExcel加載該文件到其objectReaderPHPExcel:一旦你有一個對象,是否有必要getSheet?
// 1. Load file
$inputFileType = PHPExcel_IOFactory::identify($this->inputFileName);
$this->LogMsg("FileType identified as :".$inputFileType, "O", $opLog);
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$this->LogMsg("Reader Created successfully", "O", $opLog);
$objReader->setReadDataOnly(true); // if set to read only, it will ignore styling and data validation
$objReader->setLoadSheetsOnly($this->sheetname);
$objReader= $objReader->setReadFilter($filterSubset);
$objPHPExcel = $objReader->load($this->inputFileName);
echo ("File Loaded <br>");
假設的數據被加載到對象。在此之後,爲了訪問數據,(如果我錯了,糾正我)通常會加載工作表。有或沒有過濾器。這是關於文檔告訴你如何做的唯一事情(並且我已閱讀開發人員和用戶文檔)。
$worksheet = $objPHPExcel->getSheet(0);
之後,您可以將$工作表轉換爲數組,並且您可以使用它處理數據。事情是,雖然對於大文件,getSheet方法是花費最多時間的方法(在我的情況下,9Mb excel文件需要5秒)。
我想知道是否加載工作表是必要的。一旦文件被加載,$ objPHPExcel包含什麼? var_dumping它並沒有給我太多啓發,因爲它似乎有一堆你無法從外部訪問的受保護屬性。查詢之後它是否就像$ result數據集一樣?我可以使用它而不是加載工作表嗎?除了可以使用load()的方法嗎?你能指點我什麼以外的文件閱讀嗎?
謝謝!這回答我的問題! –