美文网首页
PHP之Excel表格之导出数据

PHP之Excel表格之导出数据

作者: Cute_小肥鸡 | 来源:发表于2020-05-08 11:11 被阅读0次

    说明:由于项目需要,需要“获取Excel表格的内容”,用于插入mysql数据表。

    分为以下两种情况【我们项目是第二种情况】:

    一、上传的Excel表格在项目文件夹

        A、得到 Excel表格的路径;

        B、通过 PHPExcel类 开始读取 Excel表格内容

    二、上传的Excel表格在阿里云

        A、先将 阿里云的Excel表格 下载到 项目文件夹

    //先将excel下载到项目(判断是否有文件,没有文件的话,下载文件)

    $currentXlsx = date("YmdHis").".xlsx";

    $fileName = $_SERVER["DOCUMENT_ROOT"]."/".$currentXlsx;

    if (!file_exists($fileName)) {

        file_put_contents($currentXlsx,file_get_contents($filePath));//开始下载文件

    }

        B、通过 PHPExcel类 开始读取 Excel表格内容

        B-1、excel表格如下图

        B-2、开始读取excel表格内容

    $CI = & get_instance();

    $CI ->load ->library('PHPExcel');

    $objPHPExcel = new \PHPExcel();

    $objPHPExcel = \PHPExcel_IOFactory::load($fileName);

    $sheetCount = $objPHPExcel->getSheetCount();//获取Sheet总数

    $sheetSelected = 0; $objPHPExcel->setActiveSheetIndex($sheetSelected);

    $rowCount = $objPHPExcel->getActiveSheet()->getHighestRow();//获取表格行数 $totalNum = $rowCount - 1;//计算总发送人数

    $columnCount = $objPHPExcel->getActiveSheet()->getHighestColumn();//获取表格列数

    /////////////A、循环excel表格数据 并将 数据插入“私信详情表 T_WK_PrivateMessageDetail” $dataArr = array();

    for ($row = 1; $row <= $rowCount; $row++){//行数循环,行数是以1行开始

        for ($column = 'A'; $column <= $columnCount; $column++) {//列数循环,列数是以A列开始

            //从第2行的数据开始

            if($row > 1){

                if($column == "A"){

                    $column_2 = "FReceiver";

                    $dataArr[$row-1][$column_2] = $objPHPExcel->getActiveSheet()->getCell($column.$row)->getValue();

                }else if($column == "B"){

                    $column_2 = "FContact";

                    $dataArr[$row-1][$column_2] = $objPHPExcel->getActiveSheet()->getCell($column.$row)->getValue();

                }else{

                    $column_2 = "FContent";

                    $row_1 = $objPHPExcel->getActiveSheet()->getCell($column."1")->getValue();

                    $value[$row_1] = $objPHPExcel->getActiveSheet()->getCell($column.$row)->getValue();

                    $dataArr[$row-1][$column_2] = json_encode($value);

                }

            }

        }

    }

        B-3、打印数据如下图

        B-4、开始读取excel表格内容

    相关文章

      网友评论

          本文标题:PHP之Excel表格之导出数据

          本文链接:https://www.haomeiwen.com/subject/lznxnhtx.html