zoukankan      html  css  js  c++  java
  • PHP操作Excel – PHPExcel 基本用法

    利用PHP实现对于Excel的写入和读取,主要借助于PHPExcel插件来完成。
    准备工作:
    1.下载PHPExcel的SDK,下载地址:https://github.com/PHPOffice/PHPExcel。
    2.SDK解压之后将里面的Classes文件(包含PHPExcel文件和PHPExcel.php)拷贝到自己的项目中
    
    一、PHPExcel实现写入excel操作步骤
    首先需要引入类文件,引入PHPExcel.php文件。
    1、新建一个Excel表格(实例化PHPExcel类)
    2、创建sheet(内置表) (createSheet()方法、setActiveSheet()方法、getActiveSheet()方法)
    3、填充数据(setCellValue()方法)
    4、保存文件(PHPExcel_IOFactory::createWriter()方法、save方法)
    
    二、PHPExcel实现读取Excel操作步骤
    首先需要引入类文件,引入IOFactory.php文件。
    1、实例化Excel读取对象
    2、加载Excel文件(全部加载 、选择加载)
    3、读取Excel文件(全部读取、逐行读取)
    

      

    <?php
    
    //利用PHPExcel实现Excel文件的写入demo示例:
    
    $dir = dirname(__FILE__);                     //找出当前脚本所在路径
    require $dir.'/PHPExcel.php';                 //添加读取excel所需的类文件
    $objPHPExcel = new PHPExcel();                //实例化一个PHPExcel()对象
    $objSheet = $objPHPExcel->getActiveSheet();   //选取当前的sheet对象
    $objSheet->setTitle('2018test');              //对当前sheet对象命名名称
    //常规方式:利用setCellValue()填充数据
    $objSheet->setCellValue("A1","张一")->setCellValue("B1","张二"); //利用setCellValues()填充数据
    //取巧模式:利用fromArray()填充数据
    $array = array(
        array("","","C1","张三"),
        array("","","C2","李四")
    );
    $objSheet->fromArray($array); //利用fromArray()直接一次性填充数据
    $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel,'Excel2007'); //设定写入excel的类型
    $objWriter->save($dir.'/test.xlsx'); //保存文件
    <?php
    
    //利用PHPExcel实现Excel文件的读取demo示例:
    
    //利用php读取excel数据
    header("Content-type:text/html;charset=utf-8");               //设置页面内容是html,编码格式是utf-8
    $dir = dirname(__FILE__);                                     //找出当前脚本所在路径
    require $dir.'/PHPExcel/IOFactory.php';
    $filename = $dir.'/test.xlsx';
    $objPHPExcelReader = PHPExcel_IOFactory::load($filename);      //加载excel文件
    foreach($objPHPExcelReader->getWorksheetIterator() as $sheet)  //循环读取sheet
    {
        foreach($sheet->getRowIterator() as $row)                  //逐行处理
        {
            if($row->getRowIndex()<1)                              //确定从哪一行开始读取
            {
                continue;
            }
            foreach($row->getCellIterator() as $cell)              //逐列读取
            {
                $data = $cell->getValue();                         //获取cell中数据
                echo $data;
            }
            echo '<br/>';
        }
    }

     

  • 相关阅读:
    为什么已经设置了更多的远程连接授权,同一账户登陆的时候还会被踢掉?
    如何添加并设置远程桌面(RD)授权服务器
    如何在Windows Server 2008 上添加RD (远程桌面)会话主机配置的远程桌面授权服务器
    DB2 Enterprise Server Edition(DB2 ESE)9.1在Windows Server 2008 下出现无法新建数据库的情况,及解决办法
    在非SQL客户端使用命令行方式定期连接SQL Server 服务器并模拟用户查询操作,同时输出信息内容
    相机模型2
    Ubuntu下实用的录屏软件--Kazam
    2d lidar 与相机
    linux 串口查询设置修改
    Eigen中 Isometry3d、matrix的Identity()
  • 原文地址:https://www.cnblogs.com/cxx8181602/p/9010684.html
Copyright © 2011-2022 走看看