Heim  >  Artikel  >  Backend-Entwicklung  >  Verwenden Sie das CodeIgniterI-Framework, um Import- und Exportdatenvorgänge zu implementieren

Verwenden Sie das CodeIgniterI-Framework, um Import- und Exportdatenvorgänge zu implementieren

不言
不言Original
2018-06-14 14:44:251060Durchsuche

In diesem Artikel werden hauptsächlich die vom CI-Framework (CodeIgniter) implementierten Import- und Exportdatenvorgänge vorgestellt und die relevanten Betriebstechniken des Datenimports und -exports mit PHPExcel in den CodeIgniter-Framework-Bibliotheken anhand von Beispielen analysiert siehe es

Das Beispiel in diesem Artikel beschreibt die vom CI-Framework (CodeIgniter) implementierten Import- und Exportdatenvorgänge. Geben Sie es als Referenz an alle weiter. Die Details lauten wie folgt:

Referenzieren Sie die PHPExcel-Klasse (phpexcel.php) in Bibliotheken

public function excel_put(){
  //先做一个文件上传,保存文件
  $path=$_FILES['file'];
  $filePath = "uploads/".$path["name"];
  move_uploaded_file($path["tmp_name"],$filePath);
  //$data=array('B'=>'name','C'=>'pwd','D'=>'money1','E'=>'salt');
  $data=array('B'=>'name','C'=>'pid');
  $tablename='city2';//表名字
  $this->excel_fileput($filePath,$data,$tablename);
}
private function excel_fileput($filePath,$data,$tablename){
  $this->load->library("phpexcel");//ci框架中引入excel类
  $PHPExcel = new PHPExcel();
  $PHPReader = new PHPExcel_Reader_Excel2007();
  if(!$PHPReader->canRead($filePath)){
    $PHPReader = new PHPExcel_Reader_Excel5();
    if(!$PHPReader->canRead($filePath)){
      echo 'no Excel';
      return ;
    }
  }
  // 加载excel文件
  $PHPExcel = $PHPReader->load($filePath);
  // 读取excel文件中的第一个工作表
  $currentSheet = $PHPExcel->getSheet(0);
  // 取得最大的列号
  $allColumn = $currentSheet->getHighestColumn();
  // 取得一共有多少行
  $allRow = $currentSheet->getHighestRow();
  // 从第二行开始输出,因为excel表中第一行为列名
  for($currentRow = 2;$currentRow <= $allRow;$currentRow++){
    /**从第A列开始输出*/
    //echo $allColumn;
    for($currentColumn= &#39;A&#39;;$currentColumn<= $allColumn; $currentColumn++){
      $val = $currentSheet->getCellByColumnAndRow(ord($currentColumn) - 65,$currentRow)->getValue();
      //print_r($val);
      //die;
      if($currentColumn == &#39;A&#39;)
      {
        //echo $val."\t";
      }else if($currentColumn <= $allColumn){
        $data1[$currentColumn]=$val;
      }
    }
    foreach($data as $key=>$val){
      $data2[$val]=$data1[$key];
    }
    $this->db->insert($tablename,$data2);
    //print_r($data2);
    //echo "</br>";
  }
  //echo "\n";
  echo "导入成功";
}

Daten exportieren:

public function excel_out(){
  header("Content-type:text/html");
  header("Content-Disposition:attachment;filename=123.xls");
  $array=$this->db->get("city")->result_array();
  $str="id\t"."name\t"."pid\n";
  foreach($array as $val){
    $str.=$val[&#39;id&#39;]."\t".$val[&#39;name&#39;]."\t".$val[&#39;pid&#39;]."\n";
  }
  echo $str;
}

Das Obige ist der gesamte Artikelinhalt, ich hoffe, dass er für das Lernen aller hilfreich sein wird. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website!

Verwandte Empfehlungen:

So implementieren Sie die Cache-Optimierung für Datenbankabfragen im CI-Framework

Zusammenfassung häufig verwendeter Funktionen für AR-Datenbankoperationen im CI-Framework

So verwenden Sie das CI-Framework, um das Hochladen von Dateien zu optimieren und mehrere Dateien hochzuladen

Das obige ist der detaillierte Inhalt vonVerwenden Sie das CodeIgniterI-Framework, um Import- und Exportdatenvorgänge zu implementieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn