前言:对于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. jmeter使用TCP请求时,乱码问题,字符集设置

    不墨迹,直接上干货.(提示:UTF-8一个汉字占3个字节) TCP请求默认发的是GBK字符集,要想修改成UTF-8,只需要修改bin目录下的jmeter.properties文件,其中tcp.char ...

  2. Spark MLlib FPGrowth关联规则算法

    一.简介 FPGrowth算法是关联分析算法,它采取如下分治策略:将提供频繁项集的数据库压缩到一棵频繁模式树(FP-tree),但仍保留项集关联信息.在算法中使用了一种称为频繁模式树(Frequent ...

  3. There is already an object named '#xxxx' in the database.

    这个案例是前几天同事遇到的一个案例,在存储过程中"删除"了一个临时表,然后重新创建这个临时表时遇到"There is already an object named 'x ...

  4. Navicat for MySQL破解版安装

    https://pan.baidu.com/s/1OfFPvqrTqbUAC_Eqq2i0KA 提取码:jgep 点击第一个应用程序一路安装即可. 安装成功之后,再点击第二个应用程序PatchNavi ...

  5. kali权限提升之配置不当提权与WCE

    kali权限提升之配置不当提权与WCE 1.利用配置不当提权 2.WCE 3.其他提权 一.利用配置不当提权 与漏洞提权相比更常用的方法 在大部分企业环境下,会有相应的补丁更新策略,因此难以通过相应漏 ...

  6. jquery各大学选择插件

    地址:http://www.jq22.com/jquery-info5565 演示地址:http://www.jq22.com/yanshi5565

  7. cent os 7 与cent os 6 修改主机名称

    centos6 需要修改两处:一处是/etc/sysconfig/network,另一处是/etc/hosts,只修改任一处会导致系统启动异常.零时修改用hostname your-name cnet ...

  8. java.util.Arrays.useLegacyMergeSort=true 作用

    (原) 今天看了一下现场的环境,发现有个其它部门的项目用到了这样一个参数: -Djava.util.Arrays.useLegacyMergeSort=true 于是查看了一下什么作用. 在JDK1. ...

  9. python 操作Excel文件

    1   安装xlrd.xlwt.xlutils cmd下输入: pip install xlrd        #读取excel pip install xlwt        #写入excel pi ...

  10. 使用git 遇见的错误使用到的命令

    查看远端地址  git remote -v 需要重新添加地址  git remote set-url origin xxx 远程新的地址 git remote add origin_new 设置用户名 ...