返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >php读写excel文件
  • 345
分享到

php读写excel文件

excelphp读写excelphpexcelphpxlsphpxlsx 2023-08-31 18:08:51 345人浏览 安东尼
摘要

1.引入包 有不少提供读写excel文件的包,这里选择比较常用的一个,加到自己的项目里就好了。 "PHPoffice/phpspreadsheet": "1.8.2", 2.读取文件

1.引入包

有不少提供读写excel文件的包,这里选择比较常用的一个,加到自己的项目里就好了。

    "PHPoffice/phpspreadsheet": "1.8.2",

2.读取文件

use PhpOffice\PhpSpreadsheet\ioFactory;require "vendor/autoload.php";$f = "/tmp/excelSample.xlsx";try {    $inputFileType = IOFactory::identify($f);    $reader = IOFactory::createReader($inputFileType);    $spreadSheet = $reader->load($f);    //获取第几张数据表,默认从0开始    $sheet = $spreadSheet->getSheet(0);    //获取最大行数    $rows = $sheet->getHighestRow();        //获取最大列数    $cols = $sheet->getHighestColumn();    //获取全量数据集,返回数组形式数据    $dataArr = $sheet->rangeToArray('A1:' . $cols . $rows);    for ($i = 2; $i <= $rows; $i++) {        //获取一列数据        $ret['id'][] = $sheet->getCell('A' . $i)->getValue();    }}catch (Exception $e) {    var_dump($e->getMessage());}

我们把上边的方法改造一下,做个通用的,只需要传入excel文件路径,就可以直接读取文件,返回数组形式的全量数据的方法。

use PhpOffice\PhpSpreadsheet\IOFactory;require "vendor/autoload.php";$filepath = "/tmp/excelSample.xlsx";try {    $data = getExcelContents($filepath);    var_dump($data);}catch (Exception $e) {    var_dump($e->getMessage());}function getExcelContents($filepath){    $inputFileType = IOFactory::identify($filepath);    $reader = IOFactory::createReader($inputFileType);    $spreadSheet = $reader->load($filepath);    //获取第几张数据表,默认从0开始    $sheet = $spreadSheet->getSheet(0);    //获取最大行数    $rows = $sheet->getHighestRow();    //获取最大列数    $cols = $sheet->getHighestColumn();    //获取全量数据集    $dataArr = $sheet->rangeToArray('A1:' . $cols . $rows);    return $dataArr;}

3.写入文件

读取的时候,我们能发现读取出来的数据都是数组的形式,那写入excel文件的时候,使用的数据也是数组的形式。

use PhpOffice\PhpSpreadsheet\Cell\DataType;use PhpOffice\PhpSpreadsheet\IOFactory;use PhpOffice\PhpSpreadsheet\Spreadsheet;require "vendor/autoload.php";$filepath = "/tmp/exportExcel.xlsx";try {    $data = [        [            'id',            'name',            'age'        ],        [            1001,            'tomson',            10        ],        [            1009,            'lucifer',            20        ]    ];    $spreadSheet = new Spreadsheet();    $sheet = $spreadSheet->getActiveSheet();    $i = 1;    foreach ($data as $excel) {        $j = 1;        if (is_array($excel)) {            foreach ($excel as $e) {                //强制内容为文本,避免出现科学计数法处理数字的问题                $sheet->setCellValueExplicitByColumnAndRow($j, $i, $e, DataType::TYPE_STRING);                $j++;            }        }        $i++;    }    $writer = IOFactory::createWriter($spreadSheet, 'Xlsx');    $writer->save($filepath);}catch (Exception $e) {    var_dump($e->getMessage());}

看一下写入的excel文件
在这里插入图片描述

4.直接返回excel文件

在某些场景下的请求,可能希望直接返回excel文件,这其实也是一种写入,只是写入的目标文件不同。
大部分代码与第3部分类似,只有最后写入的部分略有变化。

$writer = IOFactory::createWriter($spreadSheet, 'Xlsx');    header("Content-Type: application/vnd.ms-excel");    header("Content-Disposition: attachment;filename=downloadExcel.xlsx");    header("Cache-Control: max-age=0");    $writer->save('php://output');

发现区别了吗?
增加了一些header,然后把输出目标调整了。

写入也应该做个通用方法的,这里就不写了,留给读此文的朋友自己练手吧。

来源地址:https://blog.csdn.net/ljl890705/article/details/127758959

--结束END--

本文标题: php读写excel文件

本文链接: https://lsjlt.com/news/386647.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • php读写excel文件
    1.引入包 有不少提供读写excel文件的包,这里选择比较常用的一个,加到自己的项目里就好了。 "phpoffice/phpspreadsheet": "1.8.2", 2.读取文件 ...
    99+
    2023-08-31
    excel php读写excel php excel php xls php xlsx
  • python读写excel文件
    项目中需要生成excel表格,在网上查了一些资料后,整理记录下。 1. 读excel表格 1 ''' 2 读取XLS,XLSX文件 3 ''' 4 def readExcelFile(filename): 5 # 打开...
    99+
    2023-01-30
    文件 python excel
  • 使用SheetJS读写Excel文件
    文章目录 目的基础说明读取写入总结 目的 项目中有一个Excel转JSON的工具,之前这个工具一直使用 Python 的 openpyxl 库来编写的,然后使用 pyinstaller 打...
    99+
    2023-09-03
    excel python 开发语言 sheetjs 表格
  • Python使用openpyxl读写excel文件
    需求:读入sample.xlsx中的信息,通过分析其中的身份证号信息,得到每个人的出生日期,性别,年龄,所在省份,星座,属相等等,将结果写入到另一个excel文件中。 首先,要使用openpyxl第三方库需要安装,安装方法如下: pip i...
    99+
    2023-09-11
    python
  • PHP如何读取Excel文件
    这篇“PHP如何读取Excel文件”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“PHP如何读取Excel文件”文章吧。应该有...
    99+
    2023-06-29
  • 如何使用node读写Excel文件
    这篇文章给大家介绍如何使用node读写Excel文件,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。具体如下:1、安装node-xlsx模块每次npm的时候,走国外的镜像,非常的慢,甚至...
    99+
    2024-04-02
  • C#使用NPOI库读写Excel文件
    本文实例为大家分享了C#使用NPOI库读写Excel文件的具体代码,供大家参考,具体内容如下 第一步添加程引用: 右键项目工程 — 管理 NuGet程序包 —...
    99+
    2024-04-02
  • Python读写EXCEL文件常用方法
    python读写excel的方式有很多,不同的模块在读写的讲法上稍有区别,这里我主要介绍几个常用的方式。 用xlrd和xlwt进行excel读写;用openpyxl进行excel读写;用pandas进行excel读写; 一、数据准备 为了方...
    99+
    2023-09-16
    python excel 数据分析
  • Python读写EXCEL文件常用方法大全
    python读写excel的方式有很多,不同的模块在读写的讲法上稍有区别,这里我主要介绍几个常用的方式。 用xlrd和xlwt进行excel读写;用openpyxl进行excel读写;用pandas进行excel读写; 一、数据准备 为了方...
    99+
    2023-09-01
    python pandas 数据分析
  • 如何使用Node读写txt和Excel文件
    今天小编给大家分享一下如何使用Node读写txt和Excel文件的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。首先给出文件的...
    99+
    2023-07-04
  • 一文带你搞懂Go如何读写Excel文件
    目录1.下载依赖库2.具体操作2.1 生成一个新的Excel文件2.2 向Excel文件中追加内容2.3 解析Excel文件内容2.4 使用Http协议上传并解析Excel文件2.5...
    99+
    2022-11-13
    Go读写Excel文件 Go读写Excel Go Excel
  • Python读写Excel
     读Excel 1 #打开Excek,xlsfile为Excel路径+文件名 2 boorRead = xlrd.open_workbook(xlsfile) 3 #读取sheet,sheet_name为Excel中sheet的名称...
    99+
    2023-01-30
    Python Excel
  • JAVA读写excel
    使用Windows操作系统的朋友对Excel(电子表格)一定不会陌生,但是要使用Java语言来操纵Excel文件并不是一件容易的事。在Web应用日益盛行的今天,通过Web来操作Excel文件的需求越来越强烈,目前较为流行的操作是在JSP或S...
    99+
    2023-06-03
  • python-yml文件读写与xml文件读写
    目录一、python-yml文件读写更新yml的数值二、python-xml文件读写寻找 XML 节点修改 XML 数据建立 XML 结构XPath 搜索XML 排版一、python...
    99+
    2024-04-02
  • Python读写EXCEL文件常用方法有哪些
    本篇文章给大家分享的是有关Python读写EXCEL文件常用方法有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。python读写excel...
    99+
    2024-04-02
  • C#中怎么使用NPOI库读写Excel文件
    今天小编给大家分享一下C#中怎么使用NPOI库读写Excel文件的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。第一步添加程引...
    99+
    2023-06-29
  • 文件读写
      读写文件是最常见的IO操作 Python内置了读写文件的函数,用法和C是兼容的 现代操作系统不允许普通的程序直接操作磁盘,即在磁盘上读写文件的功能都是由操作系统提供的 因此,读写文件就是请求操作系统打开一个文件对象(通常称为文件描述...
    99+
    2023-01-31
    文件
  • python使用pandas读写excel文件的方法实例
    目录引言读取excel文件写入文件:总结引言 现在本地创建一个excel表,以及两个sheet,具体数据如下: sheet1:  sheet2: 读取excel文件 p...
    99+
    2024-04-02
  • PHP实现读取Excel文件的记录(一)
    因为工作需要将Excel的文件记录读出再写入数据库中,之前使用的是VBS,可是那也不是正规的应用程序,使用PowerBuilder也可以,但是PowerBuilder毕竟只是临时使用...
    99+
    2024-04-02
  • PHP实现读取Excel文件的记录(二)
    《PHP实现读取Excel文件的记录(一)》 中有在PHP中读取Excel的例子,有些麻烦,因为必须要加载很多的文件。 应该有ODBC的读取方法,还没有试,今天的方法简单了...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作