首先需要去官网https://github.com/PHPOffice/PHPExcel/下载PHPExcel,下载后只需要Classes目录下的文件即可。

1、PHPExcel导出方法实现过程

/** * 数据导出 * @param array $title   标题行名称 * @param array $data   导出数据 * @param string $fileName 文件名 * @param string $savePath 保存路径 * @param $type   是否下载  false--保存   true--下载 * @return string   返回文件全路径 * @throws PHPExcel_Exception * @throws PHPExcel_Reader_Exception */
function exportExcel($title=array(), $data=array(), $fileName='', $savePath='./', $isDown=false){  include('PHPExcel.php');  $obj = new PHPExcel();  //横向单元格标识  $cellName = array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'AA', 'AB', 'AC', 'AD', 'AE', 'AF', 'AG', 'AH', 'AI', 'AJ', 'AK', 'AL', 'AM', 'AN', 'AO', 'AP', 'AQ', 'AR', 'AS', 'AT', 'AU', 'AV', 'AW', 'AX', 'AY', 'AZ');  $obj->getActiveSheet(0)->setTitle('sheet名称');   //设置sheet名称  $_row = 1;   //设置纵向单元格标识  if($title){  $_cnt = count($title);  $obj->getActiveSheet(0)->mergeCells('A'.$_row.':'.$cellName[$_cnt-1].$_row);   //合并单元格  $obj->setActiveSheetIndex(0)->setCellValue('A'.$_row, '数据导出:'.date('Y-m-d H:i:s'));  //设置合并后的单元格内容  $_row++;  $i = 0;  foreach($title AS $v){   //设置列标题  $obj->setActiveSheetIndex(0)->setCellValue($cellName[$i].$_row, $v);  $i++;  }  $_row++;  }  //填写数据  if($data){  $i = 0;  foreach($data AS $_v){  $j = 0;  foreach($_v AS $_cell){  $obj->getActiveSheet(0)->setCellValue($cellName[$j] . ($i+$_row), $_cell);  $j++;  }  $i++;  }  }  //文件名处理  if(!$fileName){  $fileName = uniqid(time(),true);  }  $objWrite = PHPExcel_IOFactory::createWriter($obj, 'Excel2007');  if($isDown){   //网页下载  header('pragma:public');  header("Content-Disposition:attachment;filename=$fileName.xls");  $objWrite->save('php://output');exit;  }  $_fileName = iconv("utf-8", "gb2312", $fileName);   //转码  $_savePath = $savePath.$_fileName.'.xlsx';  $objWrite->save($_savePath);  return $savePath.$fileName.'.xlsx';
}  //exportExcel(array('姓名','年龄'), array(array('a',21),array('b',23)), '档案', './', true); 

2、PHPExcel导入方法实现过程

/**
*  数据导入
* @param string $file excel文件
* @param string $sheet * @return string   返回解析数据 * @throws PHPExcel_Exception * @throws PHPExcel_Reader_Exception
*/
function importExecl($file='', $sheet=0){  $file = iconv("utf-8", "gb2312", $file);   //转码  if(empty($file) OR !file_exists($file)) {  die('file not exists!');  }  include('PHPExcel.php');  //引入PHP EXCEL类  $objRead = new PHPExcel_Reader_Excel2007();   //建立reader对象  if(!$objRead->canRead($file)){  $objRead = new PHPExcel_Reader_Excel5();  if(!$objRead->canRead($file)){  die('No Excel!');  }  }  $cellName = array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'AA', 'AB', 'AC', 'AD', 'AE', 'AF', 'AG', 'AH', 'AI', 'AJ', 'AK', 'AL', 'AM', 'AN', 'AO', 'AP', 'AQ', 'AR', 'AS', 'AT', 'AU', 'AV', 'AW', 'AX', 'AY', 'AZ');  $obj = $objRead->load($file);  //建立excel对象  $currSheet = $obj->getSheet($sheet);   //获取指定的sheet表  $columnH = $currSheet->getHighestColumn();   //取得最大的列号  $columnCnt = array_search($columnH, $cellName);  $rowCnt = $currSheet->getHighestRow();   //获取总行数  $data = array();  for($_row=1; $_row<=$rowCnt; $_row++){  //读取内容  for($_column=0; $_column<=$columnCnt; $_column++){  $cellId = $cellName[$_column].$_row;  $cellValue = $currSheet->getCell($cellId)->getValue();  //$cellValue = $currSheet->getCell($cellId)->getCalculatedValue();  #获取公式计算的值  if($cellValue instanceof PHPExcel_RichText){   //富文本转换字符串  $cellValue = $cellValue->__toString();  }  $data[$_row][$cellName[$_column]] = $cellValue;  }  }  return $data;
}  

版权声明:本文为博主原创文章,未经博主允许不得转载。 http://blog.csdn.net/u014236259/article/details/60601767

转载于:https://www.cnblogs.com/huangcong/p/8540729.html

黄聪:超实用的PHPExcel[导入][导出]实现方法总结相关推荐

  1. 【PHP】【组件使用】【phpexcel】【phpexcel导入导出】

    [PHP][组件使用][phpexcel][phpexcel导入导出] 一.前提 PHP 7.3 tp3.2 tp5版本及以上的可能需要修改 二.phpexcel包引入 composer requir ...

  2. python亿级mysql数据库导出_Python之csv文件从MySQL数据库导入导出的方法

    Python之csv文件从MySQL数据库导入导出的方法 发布时间:2020-10-26 07:39:02 来源:脚本之家 阅读:53 作者:张行之 Python从MySQL数据库中导出csv文件处理 ...

  3. 02 掌握实现数据导入导出的方法 1214

    02 掌握实现数据导入导出的方法 1214

  4. Mozilla 社区 » Thunderbird » Thunderbird 邮件导入导出的方法

    原贴:http://mozilla.sociz.com/viewthread.php?tid=1749 Mozilla 社区 » Thunderbird » Thunderbird 邮件导入导出的方法 ...

  5. thinkphp5 使用PHPExcel 导入导出

    首先下载PHPExcel类.网上很多,自行下载. 然后把文件放到vendor文件里面. 一般引用vendor里面的类或者插件用vendor(); 里面加载的就是vendor文件,然后想要加载哪个文件, ...

  6. PHPExcel导入导出常用方法总结

    最近公司后台管理系统需求,要用PHP导出excel表格数据,所以特整理了一下常用的方法供大家参考: PHPExcel扩展包地址:https://github.com/wanqianworld/phpe ...

  7. thinkphp6 + phpexcel 导入导出数据,设置特殊表格

    第一步:安装excel,使用composer安装,我的是在window下,直接cmd切换到项目下面,输入 composer require phpoffice/phpexcel,然后就等待安装完成.如 ...

  8. phpexcel导入导出(轻量) 淘宝导入

    excel单元格数字变成字符串方法 '1001010002400000,数值前加单引号 当excel文件中的数据设置过,导入的数据和excel显示的不同,单个修改数据个单元格格式又很麻烦,这时把exc ...

  9. oracle数据导出方法,oracle多种导入导出数据方法

    dmp格式: 1.dmp格式的导出可以通过客户端工具(PL/SQL)操作来完成,通过菜单栏---->Tools---->Export Tables,然后设置勾选相应参数即可,rows代表是 ...

最新文章

  1. 搭建Jupyter学习环境
  2. 基于bmob的校园资料分享互助平台
  3. Atitit.木马病毒自动启动-------------win7计划任务的管理
  4. 计算机应用能力 中文字处理,全国职称计算机应用能力考试《Word 2003中文字处理》考试大纲...
  5. idea 部署 web tomcat
  6. HMM学习(2)-Generating Patterns
  7. 【ZT】可行性研究报告编写规范
  8. 简述const修饰符在类中的用法
  9. VOSviewer | (一)从零安装教程
  10. GPS 相关知识科普
  11. c语言程序设计第五版第四章例题
  12. secureCRT 连接虚拟机的时候连接失败
  13. java-php-python-ssm无人智慧药柜系统设计计算机毕业设计
  14. C语言用随机函数做猜拳游戏,c语言猜拳游戏
  15. ansible set_fact模块
  16. CG100具体功能介绍
  17. 宽带运营商服务器未响应是什么意思,宽带拨号服务器无响应
  18. 计算机软件保护条例的历史,计算机软件保护条例
  19. 《生物化学与分子生物学》----代谢总论---听课笔记(十四)
  20. 用cobar搭建分布式数据库

热门文章

  1. 通过Zabbix和SNMP监控华为UPS与机柜
  2. 使用Visual Studio 2022中的Web实时预览设计Web窗体应用程序
  3. 什么是 RTMP拉流,如何使用它来提高你的直播质量
  4. 云呐|医疗医院资产管理软件,医疗设备资产管理系统
  5. skywalking agent部署
  6. java replaceall 引号_Java 1.4 String.replaceAll单引号问题
  7. RANSAC算法(一)
  8. Highcharts 9.1.2 Crack
  9. 用python实现正弦信号sin((pi/2)*t)、sin(pi*t)、 sin((3pi/2)*t)
  10. baklib-在线文档创作、托管的一体化电子出版平台