load($target_file); //读取上传到服务器的文件 $sheet = $objPHPExcel->getSheet(0); //拿到第一个sheet数据 $highestRow = $sheet->getHighestRow(); // 取得总行数 $highestColumn = $sheet->getHighestColumn(); // 取得总列数 $highestColumn = PHPExcel_Cell::columnIndexFromString($highestColumn); // 转换字母为对应的统计数字; $excelArray = array(); $data = []; $data['yyyymm'] = $_POST['yyyymm']; $i = 2; $sql_get = "select *From ec_purchase_order where yyyymm='" . $data['yyyymm'] . "' "; $res_get = mysqli_fetch_all(mysqli_query($link, $sql_get), MYSQLI_ASSOC); #excel 第一行 从B3-H3 foreach ($res_get as $key => $val) { // var_dump( $key); // $_val = $sheet->getCellByColumnAndRow(0, $i++)->getCalculatedValue(); //if ($_val == "") return; // $value = $sheet->getCell($key)->getValue(); // var_dump( $val); # 1 銀行編碼 $sheet->setCellValueExplicit('A' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #2 繳款帳號 $sheet->setCellValueExplicit('B' . ($key + 2), date("Y-m-d"), \PHPExcel_Cell_DataType::TYPE_STRING); #3 客戶屬性 $sheet->setCellValueExplicit('C' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #4 幣別 $sheet->setCellValueExplicit('D' . ($key + 2), 'TWD', \PHPExcel_Cell_DataType::TYPE_STRING); #5 客戶代號 $sheet->setCellValueExplicit('E' . ($key + 2), substr($val['customerid'], 1), \PHPExcel_Cell_DataType::TYPE_STRING); # 6客戶名稱 $sheet->setCellValueExplicit('F' . ($key + 2), $val['customer_name'], \PHPExcel_Cell_DataType::TYPE_STRING); # 7 繳費說明1 $sheet->setCellValueExplicit('G' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); # 8 繳費說明2 $sheet->setCellValueExplicit('H' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #9 繳費說明3 $sheet->setCellValueExplicit('I' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #10 繳費說明3 $sheet->setCellValueExplicit('J' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #11 繳費說明4 $sheet->setCellValueExplicit('K' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #12繳費說明5 $sheet->setCellValueExplicit('L' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #13 繳款截止日 $sheet->setCellValueExplicit('M' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #14 期別說明 $sheet->setCellValueExplicit('N' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #15 繳費通路別-銀行 $sheet->setCellValueExplicit('O' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #16 繳費通路別-郵局 $sheet->setCellValueExplicit('P' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #17 應繳總額 $sheet->setCellValueExplicit('Q' . ($key + 2), $val['summary_price'], \PHPExcel_Cell_DataType::TYPE_STRING); #18 保留欄1 $sheet->setCellValueExplicit('R' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #19 保留欄2 $sheet->setCellValueExplicit('S' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #20 收費項目 $sheet->setCellValueExplicit('T' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #21 應繳金額 $sheet->setCellValueExplicit('U' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #22 說明 $sheet->setCellValueExplicit('V' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #23 收費項目 $sheet->setCellValueExplicit('W' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #24 應繳金額 $sheet->setCellValueExplicit('X' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #25 說明 $sheet->setCellValueExplicit('Y' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); #26 結尾符號 $sheet->setCellValueExplicit('Z' . ($key + 2), '', \PHPExcel_Cell_DataType::TYPE_STRING); // $data[$excel_field_mapping[$key]] = (empty($value) || $value == '') ? 'null' : "'" . $value . "'"; //读取excel数据到数组 } //页面导出 header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); //设置下载的文件名称 header('Content-Disposition: attachment;filename=' . urlencode('代收資料匯入檔') . '.xlsx'); header('Cache-Control: max-age=0'); header('Cache-Control: max-age=1'); header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT'); header('Cache-Control: cache, must-revalidate'); header('Pragma: public'); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); $objWriter->save('php://output'); }