首页 > 其他分享 >Box/Spout 循环导出

Box/Spout 循环导出

时间:2023-06-05 10:45:44浏览次数:37  
标签:Box maxId Spout writer 导出 value key data resp

<?php
$tmpFile = tmpfile();  # 创建临时文件
$meta    = stream_get_meta_data($tmpFile);
$writer  = ExcelWriter::newWriter($meta['uri']); # 等于最下方类

$writer->addHeader([
    'unionid',
    '真实姓名',
    '手机号'
], 11);

//获取数据【批次获取 每次获取N条 并写入】
$maxId = 0;
while (true) {
    //获取一批数据
    $resp = AgentNumberOfDoctorRepository::AgentNumberOfDoctorsDetail(
        $nickname,
        $truename,
     $maxId,  50 ); if (!$resp) { break; }
//构建数据集合 foreach ($resp as $key => $value) { $data[$key]['unionid'] = $value['unionid']; $data[$key]['nickname'] = $value['nickname'];      $data[$key]['share_phone_number'] = $value['share_phone_number'] ?? ''; } # 循环写入 $tmpRows = []; foreach ($rows as $row) { $tmpRows[] = WriterEntityFactory::createRowFromArray($row); } $this->writer->addRows($tmpRows); //循环游标起始位置 foreach ($resp as $item) { $maxId = max($maxId, item['id']); } } $writer->close(); fseek($tmpFile, 0, SEEK_END); $end = ftell($tmpFile); fseek($tmpFile, 0, SEEK_SET);

 

$writer = WriterEntityFactory::createXLSXWriter();
$writer->openToFile($filePath);

/** Create a style with the StyleBuilder */
$style = (new StyleBuilder())
           ->setFontBold()
           ->setFontSize(15)
           ->setFontColor(Color::BLUE)
           ->setShouldWrapText()
           ->setCellAlignment(CellAlignment::RIGHT)
           ->setBackgroundColor(Color::YELLOW)
           ->build();

# 官网地址:opensource.box.com

标签:Box,maxId,Spout,writer,导出,value,key,data,resp
From: https://www.cnblogs.com/G921123/p/17457095.html

相关文章

  • vue .js获取checkbox是否选中
    1.html<divclass="weui-cellsweui-cells_checkboxfont14"v-for="iteminitems"><labelclass="weui-cellweui-check__label"><divclass="weui-cell__ftwidth-inherit"><inputtype="checkbox&q......
  • Laravel-Excel 导出csv文件 中文乱码处理
    Laravel-Excel导出csv文件中文乱码处理标签(空格分隔):未分类文档地址【https://docs.laravel-excel.com/3.1/exports/settings.html】实现WithCustomCsvSettings接口,或者增加配置文件`excel.php`namespaceApp\Exports;useMaatwebsite\Excel\Concerns\WithCustomCsvSet......
  • PE学习——导出表,加载dll并GetProcAddress获取函数地址的内在原理
    导出表一个可执行程序是由多个PE文件组成,这些PE文件依靠倒入表、导出表进行联系,导出表存储着PE文件提供给其他人使用的函数列表,导入表则存储着PE文件所需要用到的PE文件列表。从PE文件的角度去看,任何PE文件都可以有导入、导出表,从一般情况下来看,EXE文件不会提供导出表,也就是不会......
  • TBOX的技术点
    一、TBOX是什么T-BOX是车联网系统中的一个重要组成部分,它是一个智能终端设备,通过连接车载CAN总线和外部云平台,实现车辆与车辆(V2V)、车辆与基础设施(V2I)、车辆与互联网(V2N)之间的通信和数据交换。T-BOX的主要功能包括远程监控、车辆定位、行车数据采集、故障诊断、远程控制等。T-BOX通......
  • 在Web里面用Jasper导出Pdf、HTML、Excel,以及参数说明
    参考:[color=red]ireport导出各种格式(pdf,excel,word,html,print)的例子[/color]:[url]http://mingxiao2010.blog.163.com/blog/static/861904812010665366872/[/url]说明:PDF:JRAbstractExporterexporter=newJRPdfExporter();Excel:JRAbstractExpor......
  • 【VS Code 与 Qt6】QCheckBox的图标为什么不会切换?
    本篇专门扯一下有关QCheckBox组件的一个问题。老周不水字数,直接上程序,你看了就明白。#include<QApplication>#include<QWidget>#include<QPushButton>#include<QCheckBox>#include<QVBoxLayout>#include<QIcon>intmain(intargc,char**argv){QAp......
  • vbox和vmware靶机搭建
    靶机:vmbox  kali:vmware首先在VMware上虚拟网络编辑器中选中一个虚拟网络选择桥接模式,桥接到virtualbox的虚拟网卡上。打开kali的虚拟机设置,自定义网络里面,选中网络适配器选择刚刚桥接到virtualbox的网络,注意最好再加一块网卡选择NAT模式的网络连接外网。virtualbox(我是6.1版......
  • js使用xlsx插件导出table中的数据
    js代码需要引入<scripttype="text/javascript"src="static/js/xlsx.core.min.js"></script>//导出excelfunctiontoExcel(){varblob=sheet2blob(XLSX.utils.table_to_sheet($('table')[0]));......
  • Mapbox样式配置之过滤器表达式
    需求如一个图层,有个属性字段m,值可能有1,2,3,我想等于1和2的时候给红色,等于3的时候给黄色。解决办法在Mapbox中,你可以使用样式表(Style)来配置图层的样式,包括根据属性字段值来设置不同的颜色。以下是一个示例,演示如何根据属性字段m的值设置图层的颜色:{"version":8,"source......
  • fastadmin隐藏右上角的搜索按钮及其导出等
     想要隐藏这些按钮,有两种方式一、直接html文件里修改data-show-export="false"data-show-toggle="false"data-show-columns="false"data-search="false"data-common-Search="false" 二、在bootstarpTable初始化的时候设定//初始化表格......