分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 技术分享

使用PHPExcel解析Excel表格

发布时间:2023-09-06 02:31责任编辑:林大明关键词:PHP

安装类库

从GitHub上下载PHPExcel类库
地址:https://github.com/PHPOffice/PHPExcel

解压后将Classes文件夹移动到ThinkPHP的extend目录,并将其重命名为phpexcel

在项目中需要的地方添加引用

import('phpexcel.PHPExcel', EXTEND_PATH);

代码实现

<?phpnamespace app\index\controller;use think\Controller;class Excel extends Controller{ ???// 测试 http://127.0.0.1:8083/index/excel/index ???public function index() ???{ ???????$path = "G:/student.xlsx"; ???????$data = self::readExcel($path); ???????if (empty($data)) { ???????????$json = json_encode([ ???????????????'errcode' ??=> '20001', ???????????????'errmsg' ???=> '没有解析到数据', ???????????????'data' ?????=> [] ???????????], JSON_UNESCAPED_UNICODE); ???????} else { ???????????$json = json_encode([ ???????????????'errcode' ??=> '10000', ???????????????'errmsg' ???=> '读取数据成功', ???????????????'data' ?????=> $data ???????????], JSON_UNESCAPED_UNICODE); ???????} ???????return $json; ???} ???//PHPExcel解析Excel表格 ???protected function readExcel($filePath) ???{ ???????// 引入类库 ???????import('phpexcel.PHPExcel', EXTEND_PATH); ???????// 实例化对象 ???????if (strstr($filePath, '.xlsx')) { ???????????// 对应文件类型为 .xlsx ???????????$PHPReader = new \PHPExcel_Reader_Excel2007(); ???????} elseif (strstr($filePath, '.xls')) { ???????????// 对应文件类型为 .xls ???????????$PHPReader = new \PHPExcel_Reader_Excel5(); ???????} else { ???????????// 文件类型无法识别 ???????????return false; ???????} ???????// 载入Excel文件 ???????$PHPExcel = $PHPReader->load($filePath); ???????// 获得sheet1 ???????$sheet = $PHPExcel->getActiveSheet(0); ???????// 当前sheet的最大行数 ???????$highestRow = $sheet->getHighestRow(); ???????// 获取Excel数据 ???????$arr = $sheet->toArray(); ???????// 解析 ???????$data = []; ???????$length = count($arr); ???????for ($i = 1; $i < $length; $i++) { ???????????// 为什么i从1开始?因为i=0是列标题! ???????????$data[$i-1] = [ ???????????????'stuNo' => $arr[$i][0], ???????????????'name' => $arr[$i][1], ???????????????'class' => $arr[$i][2] ???????????]; ???????} ???????// 返回数据 ???????return empty($data) ? [] : $data; ???}}

查看运行结果

Excel中的内容为

在浏览器里访问,查看结果(此处获取的是json数据)

将json数据(通过web前端助手插件)格式化之后

可以看到已经解析出来的数据

补充:Chrome安装[Web前端助手]

点击下载web前端助手

打开Chrome的扩展程序

把下载的.crx插件拖入浏览器,即可安装

本文链接:https://www.cnblogs.com/connect/p/php-read-excel.html

使用PHPExcel解析Excel表格

原文地址:https://www.cnblogs.com/connect/p/php-read-excel.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved