首页 > 编程语言 >php读取excel数据 使用phpspreadsheet

php读取excel数据 使用phpspreadsheet

时间:2023-08-25 15:00:48浏览次数:43  
标签:worksheet excel spreadsheet getValue phpspreadsheet getCellByColumnAndRow php ro

首先是用composer安装phpoffice/phpspreadsheet

具体代码

//读取数据
    private function readYewuExcel(){
        $reader = IOFactory::createReader("Xlsx");
        $reader->setReadDataOnly(TRUE);
        $spreadsheet = $reader->load('yewu.xlsx'); //载入excel表格 路径和文件名
        $spreadsheet->setActiveSheetIndex(0);//指定excel的sheet 0是第一个
        $worksheet = $spreadsheet->getActiveSheet();
        $highestRow = $worksheet->getHighestRow(); // 总行数
        $highestColumn = $worksheet->getHighestColumn(); // 总列数 没用到
        $highestColumnIndex = Coordinate::columnIndexFromString($highestColumn); //没用到

        $lines = $highestRow;
        if ($lines <= 0) {
            exit('Excel表格中没有数据');
        }
        $yewulist = [];
        for ($row = 2; $row <= $highestRow; ++$row) {//因为第一行是标题,所以从第二行开始,所以是row=2
            //getCellByColumnAndRow(列数,行数)//获取单元格内容
            $name = $worksheet->getCellByColumnAndRow(1, $row)->getValue(); //业务名称
            $content = $worksheet->getCellByColumnAndRow(2, $row)->getValue(); //客户详情
            $btime = $worksheet->getCellByColumnAndRow(4, $row)->getValue(); //开始时间
            $etime = $worksheet->getCellByColumnAndRow(5, $row)->getValue(); //结束时间
            $gongyingshang = $worksheet->getCellByColumnAndRow(8, $row)->getValue(); //供应商

            $yewulist[] = [
                'name'=>$name,
                'content'=>$content,
                'create_time'=>$btime,
                //......
            ];
        }
        return $yewulist;
    }

标签:worksheet,excel,spreadsheet,getValue,phpspreadsheet,getCellByColumnAndRow,php,ro
From: https://blog.51cto.com/u_15668841/7231180

相关文章

  • 通过pandas读取excel的数据,但是读取的结果显示后面四位变了?
    大家好,我是皮皮。一、前言前几天在Python最强王者群【wen】问了一个Pandas数据处理的问题,一起来看看吧。请教:通过pandas读取exlce的数据,其中,A列的数据为账号数字,原数据为6226093585801315,但是读取的结果显示6226093585800672,后面四位变了。df=pd.read_excel('销售数据.xlsx').......
  • jq导出带样式的excel表格
    引入jS<scripttype="text/javascript"src="/Public/js/jquery.2.2.4.min.js"></script><scripttype="text/javascript"src="/Public/js/jquery.table2excel.js"></script>下载链接:https://files.cnblogs.co......
  • 解决POI读取Excel内存溢出的问题
    POI读取Excel有两种模式,一种是用户模式,一种是SAX模式,将xlsx格式的文档转换成CVS格式后再进行处理用户模式相信大家都很清楚,也是POI常用的方式,用户模式API接口丰富,我们可以很容易的使用POI的API读取Excel,但用户模式消耗的内存很大,当遇到很多sheet、大数据网格、假空行、公式等问题时......
  • 使用C#实现PHP语言中的 json_encode
    php语言:md5(json_encode(params).apiKey)params轉json字串,再接APIKey,最後整個字串md5加密C#语言varserializer=newJavaScriptSerializer();stringjson=serializer.Serialize(new{param1="data1",param2="data2"});参考地址:https://www.jb51.cc/cshar......
  • PHP 8.1和PHP 8.1扩展的安装
    本文介绍在Ubuntu20.04/18.04桌面系统及服务器下安装PHP8.1和PHP8.1扩展的方法。关于PHP8.1有何优势,请看PHP8.1性能测试结果:比PHP7和PHP5性能强,更有几倍的差距。一、Ubuntu20.04/18.04系统更新通过运行以下命令,将所有系统软件包更新为最新版本:sudoaptupdatesudoa......
  • php mongodb操作类,适合mongodb2.x和mongodb3.x
    在别人基础上修改的mongodb操作类,适合mongodb2.x和mongodb3.x<?php/***Mongodb类**examples:*$mongo=newHMongodb("127.0.0.1:11223");*$mongo->selectDb("test_db");*创建索引*$mongo->ensureIndex("test_table",array(&q......
  • php反射机制
    PHP5添加了一项新的功能:Reflection,这个功能使得phper可以reverse-engineerclass,interface,function,methodandextension,通过php代码,就可以得到某object的所有信息,并且可以和它交互。反射是什么?它是指在PHP运行状态中,扩展分析PHP程序,导出或提取出关于类、方法、属性、参数等......
  • php使用traits实现代码复用、多继承
    php只能继承一个父类,php5.4后新增traits实现代码复用机制变向达到多继承1、trait和类相似,但不能被实例化,无需继承,只需要在类中使用关键词use引入即可,可引入多个traits,用','隔开2、trait会覆盖继承的方法,当前类会覆盖trait方法<?phpclassPeople{ publicfunctionwalk(){ ech......
  • # yyds干货盘点 # 通过pandas读取excel的数据,但是读取的结果显示后面四位变了?
    大家好,我是皮皮。一、前言前几天在Python最强王者群【wen】问了一个Pandas数据处理的问题,一起来看看吧。请教:通过pandas读取exlce的数据,其中,A列的数据为账号数字,原数据为6226093585801315,但是读取的结果显示6226093585800672,后面四位变了。df=pd.read_excel('销售数据.xlsx').conb......
  • phpcmsV9调用默认的分页样式
    //回复列表 publicfunctionganyanreply(){//点击后台-内容-留言管理,默认运行到这 $page=isset($_GET['page'])?intval($_GET['page']):1;//分页 $tablename=$this->db->db_tablepre.$MODEL[$modelid]['tablename'];// $this->db->......