前言:对于excel大家肯定熟悉不过了的,那么我们在日常的业务中应该是有对这些文件的导入导出操作的

类的下载:composer require phpoffice/phpexcel,其中Classes文件是核心文件

//导入excel文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>文件的读写</title>
</head>
<body>
<form action="./importexcelserver.php" method="post" enctype="multipart/form-data">
请选择文件:<input type="file" name="excel"> <br/>
<input type="submit" value="上传">
</form>
</body>
</html>
//excel导入的方法的后端代码
function import_One()
{ require "./Classes/PHPExcel/IOFactory.php";
$excelio=PHPExcel_IOFactory::load($_FILES['excel']['tmp_name']); //第一个参数是表单提交的name,第二个是临时名
$sheetcount=$excelio->getSheetCount();
$datas=$excelio->getSheet(0)->toArray(); // 获取第一个sheet数据
unset($datas[0]); // 删除表头名字,
echo "<pre>";
print_r($datas);
     //.....接着你就可以操作数据库入库了
}
import_One();
//导出前台代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>文件的读写</title>
</head>
<body>
<div>
<button id="output">单击我导出文件</button>
</div>
</body>
<script type="text/javascript">
document.getElementById('output').onclick = function(){
location.href = 'export.php';
}
</script>
</html>
<?php
//导出文件后台代码
function export()
{
require "./Classes/PHPExcel.php"; // 引入核心文件
require "./Classes/PHPExcel/Writer/Excel5.php"; //此类主要往excel表中写数据的文件
$objPHPExcel = new PHPExcel(); // 实例一个excel核心类
$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel); // 将excel类对象作为参数传入进去
$sheets=$objPHPExcel->getActiveSheet()->setTitle('sheet_name');//设置表格名称
//设置sheet列头信息
$objPHPExcel->setActiveSheetIndex()->setCellValue('A1', '名字')->setCellValue('B1', '邮箱')->setCellValue('C1', '性别');
//这里是操作数据库查询库中的字段的值(如果数量庞大可以利用框架的批量读取功能)
$users=D("User")->limit(10)->Select();
$i=2;//第一行被表头占有了
foreach($users as $v){
//设置单元格的值
$sheets=$objPHPExcel->getActiveSheet()->setCellValue('A'.$i,$v['username']);
$sheets=$objPHPExcel->getActiveSheet()->setCellValue('B'.$i,$v['email']);
$sheets=$objPHPExcel->getActiveSheet()->setCellValue('C'.$i,$v['sex']?"男":"女");
$i++;
} //整体设置字体和字体大小
$objPHPExcel->getDefaultStyle()->getFont()->setName( 'Arial');//整体设置字体
$objPHPExcel->getDefaultStyle()->getFont()->setSize(10);//整体设置字体大小 // $objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true); //单元格宽度自适应
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(20); //设置列宽度
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(20); //设置列宽度
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(20); //设置列宽度
$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(20); //设置列宽度
$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(20); //设置列宽度
$objPHPExcel->getActiveSheet()->getStyle('B3')->getFont()->setBold(true); //设置单元格字体加粗 // 输出Excel表格到浏览器下载
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="excel_name.xls"'); //excel表格名称
header('Cache-Control: max-age=0');
header('Cache-Control: max-age=1');
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT'); // always modified
header('Cache-Control: cache, must-revalidate'); // HTTP/1.1
header('Pragma: public'); // HTTP/1.0
$objWriter->save('php://output'); }

php操作excel表格的导入和导出的更多相关文章

  1. vue项目使用js-xlsx进行excel表格的导入和导出方法的简单原型封装

    前提:已经安装好 file-saver xlsx和 script-loader,如未安装,请查看 https://www.cnblogs.com/luyuefeng/p/8031597.html 新建 ...

  2. 使用PHPExcel实现Excel文件的导入和导出(模板导出)

    在之前有写过一篇文章讲述了使用PHP快速生成excel表格文件并下载,这种方式生成Excel文件,生成速度很快,但是有缺点是:1.单纯的生成Excel文件,生成的文件没有样式,单元格属性(填充色,宽度 ...

  3. vue中excal表格的导入和导出

    注意:vue中要实现表格的导入与导出,首先要install两个依赖, npm install -S file-saver xlsx  和  npm install -D script-loader.其 ...

  4. qt 操作excel表格

     自己编写的一个Qt C++类,用于操作excel表格,在Qt中操作excel需在.pro中增加CONFIG+=qaxcontainer配置. 1.打开Excel:objExcel = new QAx ...

  5. Python 利用Python操作excel表格之openyxl介绍Part2

    利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436) ## 绘图 c = LineChart()    ...

  6. Python 利用Python操作excel表格之openyxl介绍Part1

    利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436),免费获取以下性能监控工具(类似Nmon精简版) ...

  7. 【转】python操作excel表格(xlrd/xlwt)

    [转]python操作excel表格(xlrd/xlwt) 最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异, ...

  8. Python 利用Python操作excel表格之xlwt介绍

    利用Python操作excel表格之xlwt介绍   by:授客 QQ:1033553122 直接上代码   案例1 #!/usr/bin/env python # -*- coding:utf-8 ...

  9. 用NPOI、C#操作Excel表格生成班级成绩单

    在C#中利用NPOI操作Excel表格非常方便,几乎上支持所有的Excel表格本身所有的功能,如字体设置.颜色设置.单元格合并.数值计算.页眉页脚等等. 这里准备使用NPOI生成一个班级成绩单Exce ...

随机推荐

  1. SQL Server 取日期时间格式 日期与字符串之间的转换

    SQL Server 取日期时间部分   在本文中,GetDate()获得的日期由两部分组成,分别是今天的日期和当时的时间: Select GetDate()  用DateName()就可以获得相应的 ...

  2. Go 编译原理实现计算器(测试驱动讲解)

    本文不需要你掌握任何编译原理的知识. 只需要看懂简单的golang语言即可, 完整的代码示例在GIT, 代码是从writing an interpreter in go这本书抽取了简单的部分出来, 如 ...

  3. js坚持不懈之18:trim()方法

    trim()方法,类似Python中的strip(),用去去除字符串对象前后的空格. <!DOCTYPE html> <html> <body> <scrip ...

  4. maven中央仓库、远程仓库地址

    1.http://repo1.maven.org/maven2 (官方,速度一般) 2.http://maven.aliyun.com/nexus/content/repositories/centr ...

  5. 用css 添加手状样式,鼠标移上去变小手,变小手

    用css 添加手状样式,鼠标移上去变小手,变小手 cursor:pointer; 用JS使鼠标变小手onmouseover(鼠标越过的时候) onmouseover="this.style. ...

  6. 自反ACL(第三组)

    一.实验拓扑 二.配置过程 此处我用了学号后两位来划分网段,注意:先把网络做通再配ACL 1)网络连通测试 内网可以telnet外网 ----------- 外网可以telnet内网 2)ACL配置( ...

  7. resnet代码分析

    1. 先导入使用的包,并声明可用的网络和预训练好的模型 import torch.nn as nn import torch.utils.model_zoo as model_zoo #声明可调用的网 ...

  8. “百度杯”CTF比赛 十月场EXEC

    前面比较常规吧看源代码-看到vim 然后就是 .index.php.swp 然后就是 这个文件的恢复,用linux下vim -r index.php.swp  就可以看到不是乱码的文件了 然后就是审核 ...

  9. C# out ref 用法总结

    C#里面的 out 和ref参数时常会用到,但对它们的区别比较模糊.所以总结一下.下面是测试代码: public void Start() { //outSum没必要赋值,赋值了也完全没用. //如果 ...

  10. Django中使用极验Geetest滑动验证码

    一,环境部署 1.创建一个django测试项目 此处省略... 二,文档部署 1.下载安装python对应的SDK 使用命令从Github导入完整项目:git clone https://github ...