日期:2014-05-17  浏览次数:20641 次

phpexcel的getSheet(i)只能读取一页,怎么获取一个excel有多少分页?
phpexcel的getSheet只能读取一页,怎么获取一个excel有多少分页?

------解决方案--------------------
count?
------解决方案--------------------
//获取工作表的数目
$sheetCount = $PHPExcel->getSheetCount();
PHP code

<?php
require_once 'Classes/PHPExcel.php';
$fileName = 'test.xlsx';
$path = '替换成文件的具体路径';
$filePath = $path.$fileName;
$PHPExcel = new PHPExcel();        
$PHPReader = new PHPExcel_Reader_Excel2007();
 
//为了可以读取所有版本Excel文件
if(!$PHPReader->canRead($filePath))
{                        
    $PHPReader = new PHPExcel_Reader_Excel5();    
    if(!$PHPReader->canRead($filePath))
    {                        
        echo '未发现Excel文件!';
        return;
    }
}
 
//不需要读取整个Excel文件而获取所有工作表数组的函数,感觉这个函数很有用,找了半天才找到
$sheetNames  = $PHPReader->listWorksheetNames($filePath);
 
//读取Excel文件
$PHPExcel = $PHPReader->load($filePath);
 
//获取工作表的数目
$sheetCount = $PHPExcel->getSheetCount();
 
//选择第一个工作表
$currentSheet = $PHPExcel->getSheet(0);
 
//取得一共有多少列
$allColumn = $currentSheet->getHighestColumn();   
 
//取得一共有多少行
$allRow = $currentSheet->getHighestRow();  
 
//循环读取数据,默认编码是utf8,这里转换成gbk输出
for($currentRow = 1;$currentRow<=$allRow;$currentRow++)
{
    for($currentColumn='A';$currentColumn<=$allColumn;$currentColumn++)
    {
        $address = $currentColumn.$currentRow;
        echo iconv( 'utf-8','gbk', $currentSheet->getCell($address)->getValue() )."\t";
    }
    echo "<br />";
}
?>