我正在使用PHPExcel根據存在的no.of行來讀取其內容。PHPExcel函數getHighestRow()不適用於.xls,但適用於.xlsx
要查找no.of行,我正在使用以下函數。
$objSheet->getHighestRow();
它對於.xlsx文件正常工作。
但它是不是在.xls中工作。
Fatal error: Call to a member function getHighestRow() on a non-object
那麼我怎麼能得到no.of行的excel?
PHP代碼:
set_include_path(get_include_path() . PATH_SEPARATOR . 'Classes/');
/** PHPExcel_IOFactory */
include 'www/PHPExcelReader/Classes/PHPExcel/IOFactory.php';
include 'www/PHPExcelReader/Classes/PHPExcel/Classes/PHPExcel.php';
try {
$cacheMethod = PHPExcel_CachedObjectStorageFactory::cache_to_sqlite3;
PHPExcel_Settings::setCacheStorageMethod($cacheMethod, $cacheSettings);
$objReader = new PHPExcel_Reader_Excel2007();
$objReader->setReadDataOnly(true);
$objReader->setLoadSheetsOnly(array("Sheet1"));
$objPHPExcel = $objReader->load($inputFileName);
$objSheet = $objPHPExcel->getActiveSheet();
$no_of_rows=$objSheet->getHighestRow();
//echo "no_of_rows=$no_of_rows";
我想這兩個XLS得到支持&的.xlsx ...請指引我。
PHPExcel getHighestRow()方法不應該在乎細胞是否受到保護!如果是這樣,那麼這是PHPExcel代碼中的一個主要缺陷,需要修復而不是修復。由於本週末我正試圖發佈一個新版本,請問您可以在[PHPExcel codeplex網站](https://phpexcel.codeplex.com/workitem/list/advanced)上提出一個問題,提供一個示例電子表格文件,演示這個問題,以便我可以看看修復它 –
@MarkBaker:我更新錯誤日誌的問題以及..請看看。致命錯誤:調用非對象的成員函數getHighestRow() – logan
這是使用Excel2007閱讀器,Excel5閱讀器還是任何閱讀器? –