PHPExcel使用-使用PHPExcel导入文件

导入步骤:

  1. 实例化excel读取对象

  2. 加载excel文件 ----------------> ( 1>. 全部加载. 2>. 选择加载. )

  3. 读取excel文件 ----------------> ( 1>. 全部读取. 2>. 逐行读取. )

导入代码:

  新建一个 reader.php (utf-8编码格式) 文件进行代码编写.

  第一种方式:

  <?php

    header('Content-Type:text/html;charset=utf-8');

    $dir = dirname(__FILE__); //找到当前脚本所在路径

    require $dir.'/PHPExcel/PHPExcel/IOFactory.php'; //引入读取excel的类文件

    $filename = $dir.'/export_1.xls'; 

    $objPHPExcel = PHPExcel_IOFactory::load($filename); //加载文件

    $sheetCount = $objPHPExcel->getSheetCount(); //获取excel文件里有多少个sheet

    for($i=0;$i<$sheetCount;$i++){

      $data = $objPHPExcel->getSheet($i)->toArray(); //读取每个sheet里的数据 全部放入到数组中

      print_r($data);

    }

 

   ?>

  第二种方式(推荐使用):

  <?php

    header('Content-Type:text/html;charset=utf-8');

    $dir = dirname(__FILE__); //找到当前脚本所在路径

    require $dir.'/PHPExcel/PHPExcel/IOFactory.php'; //引入读取excel的类文件

    $filename = $dir.'/export_1.xls'; 

    $objPHPExcel = PHPExcel_IOFactory::load($filename); //加载文件

    foreach($objPHPExcel->getWorksheetIterator() as $sheet){ //循环取sheet

      foreach($sheet->getRowIterator() as $row){ //逐行处理

        if($row->getRowIndex()<2)continue;

        foreach($row->getCellIterator() as $cell){ //逐列读取

          $data = $cell->getValue(); //获取单元格数据

          echo $data.' ';

        }

        echo '<br />';

      }

      echo '<br />';

    }

   ?>

导入数据-部分加载技术实现:

  <?php

    header('Content-Type:text/html;charset=utf-8');

    $dir = dirname(__FILE__); //找到当前脚本所在路径

    require $dir.'/PHPExcel/PHPExcel/IOFactory.php'; //引入读取excel的类文件

    $filename = $dir.'/export_1.xls'; 

    $fileType = PHPExcel_IOFactory::identify($filename); //自动获取文件的类型(后缀名)提供给phpexcel用

    $objReader = PHPExcel_IOFactory::createReader($fileType); //获取文件读取操作对象 

    $sheetName = '2年级';

    //或者指定多个sheet名称

    //$sheetName = array('2年级','3年级');

    $objReader->setLoadSheetsOnly($sheetName); //只加载指定的sheet

    $objPHPExcel = $objReader->load($filename); //加载文件

    foreach($objPHPExcel->getWorksheetIterator() as $sheet){ //循环取sheet

      foreach($sheet->getRowIterator() as $row){ //逐行处理

        if($row->getRowIndex()<2)continue;

        foreach($row->getCellIterator() as $cell){ //逐列读取

          $data = $cell->getValue(); //获取单元格数据

          echo $data.' ';

        }

        echo '<br />';

      }

      echo '<br />';

    }

   ?>

posted @ 2016-03-01 11:42  jiangxiaobo  阅读(2584)  评论(0编辑  收藏  举报