我在这里遵循了这个教程
https://arjunphp.com/how-to-use-phpexcel-with-codeigniter/
在这里
http://www.ahowto.net/php/easily-integrateload-phpexcel-into-codeigniter-framework/
但是,我仍然没有找到PHPExcel_IOFactory错误。我在这个领域找不到多少帮助。有替代excel插件还是有办法解决这个问题?
这是我的控制器构造
public function __construct() {
parent::__construct();
$this->load->library('Excel');
}
这是我的控制器上传功能
$objReader= PHPExcel_IOFactory::createReader('Excel2007');
$objReader->setReadDataOnly(true);
$objPHPExcel= PHPExcel_IOFactory::load($document_folder."/".$file_name.".".$file_extension);
// $this->response($objPHPExcel);
$objPHPExcel=$objReader->load($document_folder."/".$file_name.".".$file_extension);
$totalrows=$objPHPExcel->setActiveSheetIndex(0)->getHighestRow();
$objWorksheet=$objPHPExcel->setActiveSheetIndex(0);
for($i=2;$i<=$totalrows;$i++){ //2 is one row after the header rows
$title= $objWorksheet->getCellByColumnAndRow(0,$i)->getValue();
$first_name= $objWorksheet->getCellByColumnAndRow(1,$i)->getValue();
$last_name= $objWorksheet->getCellByColumnAndRow(2,$i)->getValue();
$date_of_birth= $objWorksheet->getCellByColumnAndRow(3,$i)->getValue();
$email=$objWorksheet->getCellByColumnAndRow(4,$i)->getValue();
$phone_number=$objWorksheet->getCellByColumnAndRow(5,$i)->getValue();
$company=$objWorksheet->getCellByColumnAndRow(6,$i)->getValue();
$input=array(
'title'=>$title,
'first_name'=>$first_name,
'last_name'=>$last_name,
'date_of_birth'=>$date_of_birth,
'email'=>$email,
'phone_number'=>$phone_number,
'company'=>$company,
);
希望我能得到一些帮助
答案 0 :(得分:0)
你必须记住,PHPExcel只是PHP,CodeIgniter也是如此。您不必通过另一个库加载PHPExcel。事实上,它对你没有任何作用。我将所有PHPExcel文件放在/ third_party /中,然后执行此操作:
require_once( APPPATH . 'third_party/PHPExcel-1.8/Classes/PHPExcel.php');
$objReader = PHPExcel_IOFactory::createReader('Excel2007');
请注意,在示例中我使用的是v1.8
如果要在多个方法中使用$objReader
,那么只需将其设为类属性即可。所以$this->objReader
代替。