PHP读取excel表格,和导出表格

本文提供了一个使用PHPExcel库进行Excel文件读写的具体实例。包括从Excel文件中读取数据并将其转换为数组,以及将数据导出到Excel文件的过程。

读取表格

    public function excel(){
        import("Common.Vendor.Excel.PHPExcel");
        $filename="./files.xlsx";
        $PHPExcel=new \PHPExcel();
        import("Common.Vendor.Excel.PHPExcel.Reader.Excel2007");
        $PHPReader=new \PHPExcel_Reader_Excel2007();
        $PHPExcel=$PHPReader->load($filename);
        $currentSheet=$PHPExcel->getSheet(0);
        $allColumn=$currentSheet->getHighestColumn();
        $allRow=$currentSheet->getHighestRow();
        for($currentRow=2;$currentRow<=$allRow;$currentRow++){
            $arr['id'] = $PHPExcel->getActiveSheet()->getCell('A'.$currentRow)->getValue();
            $arr['catId'] = $PHPExcel->getActiveSheet()->getCell('B'.$currentRow)->getValue();
            $arr['parentId'] = trim($PHPExcel->getActiveSheet()->getCell('C'.$currentRow)->getValue());
            $arr['name'] = $PHPExcel->getActiveSheet()->getCell('D'.$currentRow)->getValue();
            $arr['catClass'] = $PHPExcel->getActiveSheet()->getCell('E'.$currentRow)->getValue();
            $arr['state'] = $PHPExcel->getActiveSheet()->getCell('F'.$currentRow)->getValue();
            $arr['one'] = $PHPExcel->getActiveSheet()->getCell('G'.$currentRow)->getValue();
            $data[] =$arr;
        }
        return $data ;
    }

导出表格

    function exportexcel($data=array(),$title=array(),$filename='report'){
        header("Content-type:application/octet-stream");
        header("Accept-Ranges:bytes");
        header("Content-type:application/vnd.ms-excel");
        header("Content-Disposition:attachment;filename=".$filename.".xls");
        header("Pragma: no-cache");
        header("Expires: 0");
        //导出xls 开始
        if (!empty($title)){
            foreach ($title as $k => $v) {
                $title[$k]=iconv("UTF-8", "GBK",$v);
            }
            $title= implode("\t", $title);
            echo "$title\n";
        }
        if (!empty($data)){
            foreach($data as $key=>$val){
                foreach ($val as $ck => $cv) {
                    $data[$key][$ck]=iconv("UTF-8", "GBK", $cv);
                }
            $data[$key]=implode("\t", $data[$key]);
            }
            echo implode("\n",$data);
        }
    }

 

转载于:https://www.cnblogs.com/mthp/p/8349922.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值