PhpSpreadsheet中文文档 | 基础Spreadsheet开发使用示例-程序员宅基地

技术标签: excel  php  

·

1、 实例化Spreadsheet对象
<?php
   namespace app
   // 给类文件的命名空间起个别名
   use PhpOffice\PhpSpreadsheet\Spreadsheet;
   //Xlsx类  保存文件功能类
   use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
   
   // 实例化 Spreadsheet 对象
   $spreadsheet = new Spreadsheet();
2、 Spreadsheet对象方法介绍
<?php
 namespace app
 // 给类文件的命名空间起个别名
 use PhpOffice\PhpSpreadsheet\Spreadsheet;
 // 实例化 Spreadsheet 对象
 $spreadsheet = new Spreadsheet();
 
 // 1获取活动工作薄
 $sheet = $spreadsheet->getActiveSheet();
 
 // 2获取单元格
  $cell = $sheet->getCell('A1');   //方法1
  $cell = $sheet->getCellByColumnAndRow(1,1); //方法2
  
 // 3给单元格赋值
 $cellA->setValue('A1单元格内容');
 
 // 3-1获取设置单元格,链式操作
  $sheet->getCell('A3')->setValue('郭靖');
  $sheet->getCellByColumnAndRow(1,4)->setValue('杨康');

// 3-2获取单元格
  $cellA = $sheet->getCell('A1');
  echo '值: ', $cellA->getValue(),PHP_EOL;
  echo  '坐标: ', $cellA->getCoordinate();   //获取单元格坐标
  
// 4  Xlsx类 将电子表格保存到文件
  $writer = new Xlsx($spreadsheet);
  $writer->save('1.xlsx');

// 单元格强化
  /**
  * 参数说明
  * 设置单元格
  * setCellValue(参数1,参数2)
  * 参数1:单元格位置
  * 参数2:单元格的值
  * setCellValueByColumnAndRow(参数1,参数2,参数3)
  * 参数1:列位置
  * 参数2:行位置
  * 参数3:单元格的值
  */

  $sheet->setCellValue('A1','ID');
  $sheet->setCellValue('B1','姓名');
  $sheet->setCellValue('C1','年龄');
  $sheet->setCellValue('D1','身高');

  $sheet->setCellValueByColumnAndRow(1, 2, 1);
  $sheet->setCellValueByColumnAndRow(2, 2, '李雷');
  $sheet->setCellValueByColumnAndRow(3, 2, '18岁');
  $sheet->setCellValueByColumnAndRow(4, 2, '188cm');

  $sheet->setCellValueByColumnAndRow(1, 3, 2);
  $sheet->setCellValueByColumnAndRow(2, 3, '韩梅梅');
  $sheet->setCellValueByColumnAndRow(3, 3, '17岁');
  $sheet->setCellValueByColumnAndRow(4, 3, '165cm');
  
  /
  **
   *  单元格文字样式设置
   */
   
  //	getStyle 获取单元格样式
  //	getFont 获取单元格文字样式
  //	setBold 设置文字粗细
  //	setName 设置文字字体
  //	setSize 设置文字大小

  $sheet->getStyle('B2')->getFont()->setBold(true)->setName('宋体')->setSize(20);

  /
  **
  * 单元格文字颜色  
  */	
  // getColor 获取坐标颜色
  // setRGB设置字体颜色
  // getRGB 获取字体颜色
  // setARGB 设置字体颜色
  // getARGB 获取字体颜色
  $sheet->getStyle('B2')->getFont()->getColor()->setRGB('#AEEEEE');
  $sheet->getStyle('B3')->getFont()->getColor()->setARGB('FFFF0000');
  
   /
   **
   *单元格格式
   */
  $sheet->setCellValue('A1','2019-10-10 10:10:10');
  $sheet->setCellValue('A2','2019-10-10 10:10:10');
  $sheet->getStyle('A2')->getNumberFormat()->setFormatCode(\PhpOffice\PhpSpreadsheet\Style\NumberFormat::FORMAT_DATE_YYYYMMDD2);

  # Xlsx类 将电子表格保存到文件
  use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
  $writer = new Xlsx($spreadsheet);
  $writer->save('1.xlsx');

2020.08.10 未完待续。。。。
下期预告:批量操作

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/jackbon8/article/details/107915006

智能推荐

猴子分桃c语言,猴子分桃。请给出算法-程序员宅基地

文章浏览阅读373次。下面这道题我曾经用计算机编程求过解,感觉几十行代码就可以解出来,但没有成功(已经成了我的心病)。哪位好心人来帮帮这些可怜的猴子吧!五个猴子在一个小岛上发现一堆桃子,他们想平分桃子但怎么也分不开,于是相约去睡觉,明天再分。晚上第一个猴子趁大家熟睡,爬起来吃掉一只桃子,剩下的恰好可以平分成五份,这个猴子拿走其中的一份藏起来,然后重新去睡觉。第二,第三,第四只猴子都照此办理。最后第五只猴子爬起来,吃了一..._c语言猴子分桃子

这家厂商有“100”种方法帮你上云-程序员宅基地

文章浏览阅读201次。早在2018年初,IDC曾发布一组预测数据:2018年云计算环境中部署IT基础设施产品的总开支(服务器、存储和交换机)将达523亿美元,同比增长10.9%。其中公有云数据...

Caused by: org.gradle.api.internal.plugins.PluginApplicationException: Failed to apply plugin [id ‘c_failed to apply plugin [id 'com.alipay.bundle']-程序员宅基地

文章浏览阅读1.4k次。开始学习kotlin了,自己创建项目不会出错,导别人的项目出现下面的错Caused by: org.gradle.api.internal.plugins.PluginApplicationException: Failed to apply plugin [id 'com.android.application']我试着修改kotlin的版本:ext.kotlin_version保持一致,也不行ext.kotlin_versionGradle版本修改一致还是不行, 百度了下都说加上下_failed to apply plugin [id 'com.alipay.bundle']

sql 获取字符串长度SQL字符串操作汇总_字符串长度sql语句-程序员宅基地

文章浏览阅读7.3w次,点赞3次,收藏16次。--将字符串中从某个字符开始截取一段字符,然后将另外一个字符串插入此处   select stuff('hi,world!',4,4,'****') --返回值hel****orld!   --返回从指定位置开始指定长度的字符串   select substring('Hello,World!',2,10) --返回值ello,World   --将字符串中某段字符替换为指定的字符_字符串长度sql语句

【路径规划-二维路径规划】基于人工势场结合快速搜索树APF+RRT实现机器人避障规划附matlab代码_人工势场法路径规划-程序员宅基地

文章浏览阅读1.2k次,点赞26次,收藏29次。【路径规划-二维路径规划】基于人工势场结合快速搜索树APF+RRT实现机器人避障规划附matlab代码_人工势场法路径规划

OpenKG开源系列|首个多模态开放知识图谱OpenRichpedia (东南大学)-程序员宅基地

文章浏览阅读1.8k次,点赞2次,收藏19次。OpenKG地址:http://openkg.cn/dataset/richpeidaGitHub地址:https://github.com/OpenKG-ORG/OpenRichpedi..._openkg

随便推点

Studio one还可以穿插式录音,再也不用重录了_studio one穿插录音-程序员宅基地

文章浏览阅读3k次。它能将为每一段音乐保存输入和输出设置,对应于每个计算机和设备驱动程序的设置。通过这种方式,你可以将音乐带到你朋友的音棚中,并通过Studio One软件处理他们的界面。当你回到自己的录音棚并打开同样的音乐时,软件会自动回复到你原来的输入和输出设置,就像音乐从未离开过你的录音棚一样。这个特性不受音频接口模型的限制。有的时候在我们录音的时候,有的地方并不是很满意,重新在录的话就太浪费时间了,所以我..._studio one穿插录音

【自然语言处理】【Pytorch】从头实现SimCSE_pytorch simcse-程序员宅基地

文章浏览阅读3.7k次,点赞5次,收藏33次。github:Concise_SimCSE博客内容:基于pytorch和transformers,从头开始实现SimCSEimport torchimport torch.nn as nnfrom abc import ABCfrom tqdm.notebook import tqdmfrom dataclasses import dataclass, fieldfrom typing import List, Union, Optional, Dictfrom torch.utils._pytorch simcse

微信上传图片,开发者工具 无效的媒体ID_1237378768e7q8e7r8qwesafdasdfasdfaxss111-程序员宅基地

文章浏览阅读912次。{"errcode":40007,"errmsg":"invalid media_id hint: [ON83ta01218661]"}serverId都相同:1237378768e7q8e7r8qwesafdasdfasdfaxss111直接上真机测试即可_1237378768e7q8e7r8qwesafdasdfasdfaxss111

day01 python基础入门_登录失败时允许重复输入三次用代码怎么写-程序员宅基地

文章浏览阅读436次。1.python语言# 89年 龟叔# 人工智能 2012年2.python的特点# 优点 : 简明 简单 跨平台性好# 缺点 : 慢 -执行速度相对其他语言慢# 编程语言的分类: 代码-->中国人\印度人 # 编译型语言: c c++ java go # 优点 : 执行速度快 # 缺点 : 维护成本高\跨平台性差 # 解释型语言 :python # 优点 : 维护成本低\跨平台性好 # 缺点 : 慢3.解释器# cpython:官方推荐的# ipython:_登录失败时允许重复输入三次用代码怎么写

配色-程序员宅基地

文章浏览阅读151次。ggplot2 只接受数据框类型参考博客:https://blog.csdn.net/chang349276/article/details/77476848https://blog.csdn.net/songzhilian22/article/details/49388677http://blog.sciencenet.cn/home.php?mod=space&..._scale_colour_fermenter(palette = "spectral")+

unity Text Mesh Pro Sprite Animation 支持动图,动态表情-程序员宅基地

文章浏览阅读1.7k次,点赞3次,收藏3次。unity Text Mesh Pro 支持动图,动态表情使用格式<sprite=assetName anim=“first frame, last frame, frame rate”>从 TMP_RichTextTagsCommon.cs 的 enum RichTextTag 中可以看到tmp是支持 动态图 动态表情的例如:<sprite=“EmojiOne” anim=“1,10,20”>...

推荐文章

热门文章

相关标签