phpexcel 生成大於26列數據

function excelExport2($fileName = '', $headArr = [], $data = [], $widths=[]) {
    ob_clean();
//    $fileName = iconv("UTF-8", "GB2312//IGNORE", @$fileName);
    $fileName .=".xls";
    Loader::import('PHPExcel.PHPExcel');
    Loader::import('PHPExcel.PHPExcel.IOFactory.PHPExcel_IOFactory');
    $objPHPExcel = new \PHPExcel();
    $objPHPExcel->getProperties();
    $key = 0;
    foreach ($headArr as $k=>$v) {
        $colum = PHPExcel_Cell::stringFromColumnIndex($k);
        $objPHPExcel->setActiveSheetIndex(0) ->setCellValue($colum.'1', $v);
        $key += 1;
    }

    $column = 2;
    $objActSheet = $objPHPExcel->getActiveSheet();
    foreach($data as $key => $rows){ //行寫入
        $span = 0;
        foreach($rows as $keyName=>$value){// 列寫入
            $j = PHPExcel_Cell::stringFromColumnIndex($span);
            //$objActSheet->setCellValue($j.$column, $value);
            $objPHPExcel->getActiveSheet(0)->setCellValueExplicit($j.$column, $value,\PHPExcel_Cell_DataType::TYPE_STRING);
            $span++;
        }
        $column++;
    }

    $objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
    header('Content-Type: application/vnd.ms-excel');//告訴瀏覽器將要輸出excel03文件
    header('Content-Disposition: attachment;filename="'.$fileName.'"');//告訴瀏覽器將輸出文件的名稱(文件下載)
    header('Cache-Control: max-age=0');//禁止緩存
    $objWriter->save("php://output");
}

 

 

//格式轉換 小黑雲轉成ERP
    public function format_conversion(){
        set_time_limit(0);
        $serial_number=input('param.serial_number');
        $name=input('param.name');
          $list=Db::name('haohuo_order')->where(['serial_number'=>$serial_number])->select();
          if(count($list) && is_array($list)){
              $exportData=[];
              foreach ($list as $k=>$v){
                    $arr=array('43',trim($v['order_sn']),$v['goods_name'],$v['order_person'],$v['order_person'],$v['province'],$v['city'],
                        $v['area'],$v['address'],'000000',$v['order_mobile'],'0',$v['remark'],
                        $v['order_time'],$v['order_time'],'','60',$v['goods_model'],'',
                        $v['order_amount'],$v['order_num'],'','0','0','0'
                        );
                  $exportData[]=$arr;
              }
            $filename = $name.'-Erp'.$serial_number;
            $header = array(
                "店鋪編碼", "交易編號", "交易標題", "買家會員號", "收貨人的姓名", "收貨人的所在省份","收貨人的所在城市",
                "收貨人的所在地區", "收貨人的詳細地址", "收貨的人郵編", "收貨人的手機號碼", "是否開票","賣家備註",
                "交易時間", "付款時間", "交易促銷信息", "快遞公司編碼","商品編碼","商品名稱", "商品價格","購買數量",
                "發貨倉庫", "是否折扣", "是否運費","是否贈品");
            $widths = array();
            if ($exportData) {
 excelExport2($filename, $header, $exportData, $widths);//生成數據
                die();
            }
          }
    }
相關文章
相關標籤/搜索