在CodeIgniter中使用PHPExcel从Excel读取数据
我正在使用PHPExcel从CodeIgniter中的Excel文件中读取数据。在将PHPExcel提供的以下示例集成到其文档中时存在问题 下面是示例中的代码:在CodeIgniter中使用PHPExcel从Excel读取数据,codeigniter,phpexcel,Codeigniter,Phpexcel,我正在使用PHPExcel从CodeIgniter中的Excel文件中读取数据。在将PHPExcel提供的以下示例集成到其文档中时存在问题 下面是示例中的代码: <?php /** Include path **/ set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); /** PHPExcel_IOFactory */ include 'PHPExcel/IOFactory.php';
<?php
/** Include path **/
set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/');
/** PHPExcel_IOFactory */
include 'PHPExcel/IOFactory.php';
$inputFileType = 'Excel5';
// $inputFileType = 'Excel2007';
// $inputFileType = 'Excel2003XML';
// $inputFileType = 'OOCalc';
// $inputFileType = 'Gnumeric';
$inputFileName = './sampleData/example1.xls';
$sheetname = 'Data Sheet #3';
class MyReadFilter implements PHPExcel_Reader_IReadFilter
{
public function readCell($column, $row, $worksheetName = '') {
// Read rows 1 to 7 and columns A to E only
if ($row >= 1 && $row <= 7) {
if (in_array($column,range('A','E'))) {
return true;
}
}
return false;
}
}
$filterSubset = new MyReadFilter();
echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />';
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
echo 'Loading Sheet "',$sheetname,'" only<br />';
$objReader->setLoadSheetsOnly($sheetname);
echo 'Loading Sheet using filter<br />';
$objReader->setReadFilter($filterSubset);
$objPHPExcel = $objReader->load($inputFileName);
echo '<hr />';
$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true);
var_dump($sheetData);
?>
我该如何着手解决这个问题
public function importFromExcel()
{
$this->load->library('excel');
$this->load->library('Excel/MyReadFilter');
$inputFileType = 'Excel5';
// $inputFileType = 'Excel2007';
$inputFileName = FCPATH.'uploads/khanas.xlsx';
$sheetname = 'Sheet1';
$filterSubset = new MyReadFilter();
echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />';
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
echo 'Loading Sheet "',$sheetname,'" only<br />';
$objReader->setLoadSheetsOnly($sheetname);
echo 'Loading Sheet using filter<br />';
$objReader->setReadFilter($filterSubset);
$objPHPExcel = $objReader->load($inputFileName);
echo '<hr />';
$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true);
var_dump($sheetData);
}
class MyReadFilter implements PHPExcel_Reader_IReadFilter
{
public function readCell($column, $row, $worksheetName = '') {
$startRow = 1;
$endRow = 7;
$startCol = 'A';
$endCol = 'E';
// Read rows 1 to 7 and columns A to E only
if ($row >= $startRow && $row <= $endRow) {
if (in_array($column,range($startCol,$endCol))) {
return true;
}
}
return false;
}
}
$this->load->library('Excel/MyReadFilter');