2017-09-27 1 views
0

j'ai suivi ce tutoriel iciCodeigniter PHPExcel classe 'PHPExcel_IOFactory' not found

https://arjunphp.com/how-to-use-phpexcel-with-codeigniter/

et ici

http://www.ahowto.net/php/easily-integrateload-phpexcel-into-codeigniter-framework/

Cependant, je reçois toujours le PHPExcel_IOFactory pas trouvé d'erreur. Je n'ai pas trouvé beaucoup d'aide dans ce domaine. Existe-t-il un plugin Excel supplémentaire ou existe-t-il un moyen de résoudre ce problème?

Ce sont mes contrôleurs construisent

public function __construct() {   
     parent::__construct(); 
     $this->load->library('Excel'); 
    } 

Ceci est mon contrôleurs fonction de téléchargement

$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, 
    ); 

Hope je peux obtenir de l'aide avec ce

+0

À quoi ressemble votre bibliothèque Excel.php? Etes-vous sûr d'avoir TOUS les fichiers PHPExcel? –

Répondre

0

Vous devez vous rappeler que PHPExcel est juste PHP , et ainsi est CodeIgniter. Vous n'avez pas besoin de charger PHPExcel dans une autre bibliothèque. En fait, cela ne fait rien pour vous. Je mets tous les fichiers dans PHPExcel/third_party /, puis faire:

require_once(APPPATH . 'third_party/PHPExcel-1.8/Classes/PHPExcel.php'); 
$objReader = PHPExcel_IOFactory::createReader('Excel2007'); 

Notez que dans l'exemple que je utilise v1.8

Si vous souhaitez utiliser $objReader dans plusieurs méthodes, puis juste en faire une propriété de classe. Donc $this->objReader à la place.

+0

Salut! Merci d'avoir répondu. Mon dossier tiers contient un fichier PHPExcel et un dossier PHPExcel contenant toutes les classes. Mon dossier de bibliothèque contient un fichier Excel.php qui a juste ce require_once APPPATH. "/ Third_party/PHPExcel.php"; La classe Excel étend PHPExcel { public function __construct() { parent :: __ construct(); } } – JianYA

+0

J'ai également essayé votre méthode d'ajouter le require_once dans mon contrôleur mais la même erreur se produit – JianYA

+0

J'ai réalisé ce que l'erreur était. mon fichier PHPExcel_IOFactory a été modifié car j'ai lu quelque part que je devais supprimer la partie PHPExcel_. Merci de votre aide! – JianYA