Codeigniter关于PHPExcel的导入

首先是先下载PHPExcel类。 下载地址:https://github.com/PHPOffice/PHPExcel

将类库放到application->libraries中


准备工作做好了, 然后开始进行导入

首先  创建from表单

<?php echo form_open_multipart('welcome/php_excel');?>

<input type="file" name="file" size="20" />

<br /><br />

<input type="submit" value="upload" />

</form>

在对应的控制器中,进行文件上传

public function php_excel()
{

   $config['upload_path'] = './uploads/';
   $config['allowed_types'] = 'xls';
   $config['max_size'] = 100;
   $config['max_width'] = 1024;
   $config['max_height'] = 768;
   $this->load->library('upload', $config);

   if (!$this->upload->do_upload('file')) {
      $error = array('error' => $this->upload->display_errors());

      $this->load->view('myform', $error);
   } else {
      $data = array('upload_data' => $this->upload->data());

      $list = $this->import_excel($data['upload_data']['full_path']);
        //$list就是取出的内容   在这里进行存入数据库等项目需要的逻辑处理
      var_dump($list);
      //$this->load->view('formsuccess', $data);
   }
}

上传文件以后才可以获取文件内容,也就是import_excel这个方法,这个方法返回的是自己拼接的键对值的Excel表中的内容,

在获取到这些内容以后 上传到数据库就不难了

public function import_excel($filename)
{
   $this->load->library("phpexcel");//ci框架中引入excel   $objPHPExcel = new PHPExcel();
   $objReader = \PHPExcel_IOFactory::createReader('Excel5');
   $objPHPExcel = $objReader->load($filename,$encode='utf-8');
   $sheet = $objPHPExcel->getSheet(0);
   $highestRow = $sheet->getHighestRow(); // 取得总行数
   $highestColumn = $sheet->getHighestColumn(); // 取得总列数
   for($i=2;$i<$highestRow+1;$i++){
      $data[$i]['goods_name'] = $objPHPExcel->getActiveSheet()->getCell('A'.$i)->getValue();
      $data[$i]['brand'] = $objPHPExcel->getActiveSheet()->getCell('B'.$i)->getValue();
      $data[$i]['specification'] = $objPHPExcel->getActiveSheet()->getCell('C'.$i)->getValue();
      $data[$i]['store_count'] = $objPHPExcel->getActiveSheet()->getCell('D'.$i)->getValue();
      $data[$i]['shop_price'] = $objPHPExcel->getActiveSheet()->getCell('E'.$i)->getValue();
   }
   return $data;

}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值