php之box/spout 导入导出功能

php之box/spout 导入导出功能官方文档 Spoutexecl 导入功能 Commonimport param filePathstri author patti publicstatic filePath try ini set memory limit 100M set time limi

官方文档Spout

execl导入功能

 / * Common import file * @param $filePath string * @author : patti */ public static function importFile($filePath) { 
    try{ 
    ini_set('memory_limit', '100M'); set_time_limit(1000); $reader=ReaderEntityFactory::createXLSXReader(); $reader->open($filePath); foreach ($reader->getSheetIterator() as $sheet) { 
    foreach ($sheet->getRowIterator() as $row) { 
    $rowArr[] = $row->toArray(); } } unset($rowArr[0]); $reader->close(); }catch (\Exception $e){ 
    throw new \Exception($e->getMessage()); } return $rowArr; } 

execl导出功能

 / * Common export file * @param $headerCell array * @param $name string * @param $data array * @author : patti */ public static function exportFile($headerCell=[],$name='test.xls',$data=[]) { 
    try{ 
    ini_set('memory_limit', '100M'); set_time_limit(1000); //BACKGROUND $backStyle = (new StyleBuilder()) ->setBackgroundColor(Color::LIGHT_BLUE) ->setFontColor(Color::BLACK) ->setFontBold() ->build(); //BORDER LINE $border=(new BorderBuilder())->setBorderTop(Color::BLACK,Border::WIDTH_THIN) ->setBorderLeft(Color::BLACK,Border::WIDTH_THIN) ->setBorderRight(Color::BLACK,Border::WIDTH_THIN) ->setBorderBottom(Color::BLACK,Border::WIDTH_THIN) ->build(); $borderStyle=(new StyleBuilder())->setBorder($border)->build(); //CREATE $writer = WriterEntityFactory::createXLSXWriter(); foreach ($headerCell as $val){ 
    $cells[] = WriterEntityFactory::createCell($val,$backStyle); } $singleRow = WriterEntityFactory::createRow($cells)->setStyle($borderStyle); $writer->openToBrowser("php://output/" . $name) ->addRow($singleRow); foreach ($data as $value) { 
    $rowFromValues = WriterEntityFactory::createRowFromArray($value); $writer->setDefaultRowStyle($borderStyle)->addRow($rowFromValues); } $writer->close(); return true; }catch (\Exception $e){ 
    throw new \Exception($e->getMessage()); } } 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/231062.html原文链接:https://javaforall.net

(0)
上一篇 2026年1月31日 下午1:01
下一篇 2026年1月31日 下午1:22


相关推荐

  • 今日遇到一问题,甚是定奇怪,我将文件名称改为小写,系统便能载入上,但为何这样呢?

    今日遇到一问题,甚是定奇怪,我将文件名称改为小写,系统便能载入上,但为何这样呢?

    2021年12月2日
    46
  • 稳压管稳压电路

    稳压管稳压电路一、稳压管稳压电路:整流滤波电路的输出电压会随着电网电压的波动而波动,随着负载电阻的变化而变化。为了获得稳定性好的直流电压,必须采取稳压措施。二、稳压原理:对于任何稳压电路而言,都应该从两方面来考虑:电网电压波动、负载变化,研究其输出电压是否稳定。(1)、电网电压波动:(2)、负载变化:…

    2022年6月20日
    27
  • 软件测试面试题及答案2020_软件测试面试题目100及最佳答案

    软件测试面试题及答案2020_软件测试面试题目100及最佳答案1.性能测试关注的指标是什么?从外部看,性能测试主要关注如下三个指标:吞吐量:每秒钟系统能够处理的请求数、任务数响应时间:服务员处理一个请求或一个任务的耗时错误率:一次请求中结果出错的请求所占比例从服务器的角度看,性能测试主要关注CPU、内存、服务器负载、网络、磁盘IO等。2.性能测试是怎么做的?/如果你要进行性能测试,你是如何展开操作的?1.确定关键业务,关键路径;2.确定测试的关键数据。比如并发量,响应时间,循环次数等;3.准备测试环境,完成脚本录制或脚本开发;4.执行测试,观察或监控输出参数,比如吞

    2026年4月17日
    4
  • 探索 AI 写代码极致:Claude Opus 4.1 模型登场,软件工程能力再攀新高峰

    探索 AI 写代码极致:Claude Opus 4.1 模型登场,软件工程能力再攀新高峰

    2026年3月16日
    2
  • Pycharm中使用jupyter notebook编写程序

    Pycharm中使用jupyter notebook编写程序第一次接触到 jupyter 格式 挺喜欢 jupyter 格式是一种交互式的代码格式 比 matlab 的交互式更强大 因为其可以将文档说明 公式 代码和结果 包括结果图 融合在一个文档中 按照自己代码开发和思考的过程 许多机器学习的文档 以及 kaggle 竞赛的程序 都是用 jupyter 格式书写的 由于 jupyternoteb 是一个 web 程序 刚接触时着实不习惯和不理解 毕竟与其他基于本地的

    2026年3月27日
    1
  • 鹰眼摄像头(OV7725)的使用

    鹰眼摄像头(OV7725)的使用原载:http://blog.csdn.net/lxk7280/article/details/26975233?utm_source=tuicool凭借着OV7620,将已经调好速度控制和角度控制的车子能跑起来了。基础功能实现后就开始对车子优化了。一个好的人眼睛最重要,同样对于一个好的平衡车,摄像头传感器最重要。因此我决心首先做的是对摄像头的优化。

    2022年4月19日
    121

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号