有时需要将Excel表格的数据导入到mysql数据库中,我们使用PHP的一个开源项目PHP-ExcelReader可以轻松实现Excel的导入。另外将mysql数据导出为Excel与本站上篇文章中导出CSV一样,只是将逗号分割符换成制表符,并修改header信息就可以了。

导入XLS

PHP-ExcelReader这是一个开源的项目,主要是来解析excel的文件,您可以到http://sourceforge.net/projects/phpexcelreader获取最新版的源码。下载之后解压,主要用到excel文件夹里面的两个文件reader.php和oleread.inc。

导入Xls处理流程:选择xls文件->上传xls文件到服务器->通过PHP-ExcelReader解析excel->批量入库。

include_once('reader.php');//引入PHP-ExcelReader
$tmp = $_FILES['file']['tmp_name'];
if(empty($tmp)){echo '请选择要导入的Excel文件!';exit;
}
$save_path = 'xls/';
$file_name = $save_path.date('Ymdhis').'.xls';//上传后的文件保存路径和名称
if(copy($tmp,$file_name)){$xls = new Spreadsheet_Excel_Reader();$xls->setOutputEncoding('utf-8');//设置编码$xls->read($file_name);//解析文件for($i=2;$i<=$xls->sheets[0]['numRows'];$i++){$name = $xls->sheets[0][$i][0];$sex = $xls->sheets[0][$i][1];$age = $xls->sheets[0][$i][2];$data_values .= "('$name','$sex','$age'),";}$data_values = substr($data_value,0,-1);//去掉最后一个逗号$query = mysql_query("insert into student (name,sex,age) values $data_values");//批量插入数据表中if($query){echo '导入成功!';}else{echo '导入失败!';}
}

PHP-ExcelReader读取上传的excel文件后,返回一个数组,里面包含了表格的所有信息,可以循环获取需要的信息。
导出XLS

导出XLS流程:读取学生信息表->循环记录构建制表符分隔的字段信息->设置header信息->导出文件(下载)到本地

$result = mysql_query('select * from student');
$str = "姓名\t性别\t年龄\t\n";
$str = iconv('utf-8','gb2312',$str);
while($row=mysql_fetch_array($result)){$name = iconv('utf-8','gb2312',$row['name']);$sex = iconv('utf-8','gb2312',$row['sex']);$str .= $name."\t".$sex."\t".$row['age']."\t\n";
}
$filename = date('Ymd').'.xls';
exportExcel($filename,$str);

exportExcel函数用于设置header信息。

function exportExcel($filename,$content){header("Cache-Control: must-revalidate, post-check=0, pre-check=0");     
 header("Content-Type: application/vnd.ms-execl");     header("Content-Type: application/force-download");     header("Content-Type: application/download");     header("Content-Disposition: attachment; filename=".$filename);     
   header("Content-Transfer-Encoding: binary");     header("Pragma: no-cache");     header("Expires: 0");      echo $content;
} 
此外,关于导入和导出Excel,还可以使用PHPExcel,这个非常强大,大家有空可以去研究,官方网站: http://www.codeplex.com/PHPExcel导入导出都成,可以导出office2007格式,同时兼容2003
												

使用PHP导入Excel和导出数据为Excel文件相关推荐

  1. php上传和导出excel文件,(进阶篇)使用PHP导入Excel和导出数据为Excel文件

    有时需要将Excel表格的数据导入到mysql数据库中,我们使用PHP的一个开源项目PHP-ExcelReader可以轻松实现Excel的导入. 1.导入XLS PHP-ExcelReader这是一个 ...

  2. C#基于Npoi通过特性的方式导出简单数据到Excel或基于特性以及基于Excel模板导出数据到Excel以及从Excel中把数据导入到对象中

    导出数据到Excel表格以及从Excel表格中读取数据是我们日常开发很多情况都会遇到的,这里或许只是导出一些简单的数据到excel,这里或许会按照一定的模板导出数据到excel,这里也可能需要从Exc ...

  3. php导入excel中文手册,使用PHP导入Excel和导出数据为Excel文件

    有时需要将Excel表格的数据导入到mysql数据库中,我们使用PHP的一个开源项目PHP-ExcelReader可以轻松实现Excel的导入.另外将mysql数据导出为Excel与本站上篇文章中导出 ...

  4. js+excel+mysql_js导出数据到excel

    方式一 var jsonData = [ { name:'路人甲', phone:'123456', email:'123@123456.com' }, { name:'炮灰乙', phone:'12 ...

  5. Qt导出数据到excel

    Qt导出数据到excel Qt导出数据到excel,方法有很多,Qt里也有自带的axcontainer模块中的#include<QAxObject>类可以导出数据到excel,但是这种方法 ...

  6. C#导入导出数据到Excel的通用类源码

    下面内容是关于C#导入导出数据到Excel的通用类的内容. public class ExcelIO { private int _ReturnStatus; private string _Retu ...

  7. 灰色模型代码GM(1,1),从excel导入数据,亦可导出数据到excel中。

    灰色模型代码GM(1,1),从excel导入数据,亦可导出数据到excel中. 总结1:直接输出结果 %clc W= MicrosoftExcel;(从EXCEL导入数据后,matlab自动储存的数组 ...

  8. CATIA批量导入导出数据到EXCEL

    CATIA批量导入导出数据到EXCEL 序言 一.EXCEL数据点批量导入到CATIA 二.CATIA数据点批量导入到EXCEL 三.VB批量输出点到EXCEL 序言 工作中,由于测量基准和建模基准不 ...

  9. java导出为excel文件_java导出数据到excel文件

    有的时候,将一些有用的数据导出到excel是很有必要的.比如说,我现在在做一个学校的在线教学平台,有一个需求是:将学生成绩导出到excel文件中去. 那怎样实现用java导出数据到excel文件呢?? ...

最新文章

  1. 我的公交一卡通用不了了-_-
  2. JAVA工程师常用算法_算法工程师必须要知道的8种常用算法思想
  3. 【转】asp.net Core 系列【一】——创建Web应用
  4. SpringFramework之javax.servlet.http.HttpSession
  5. ObjectOutputStream 和 ObjectInputStream类的简单介绍,及运用。
  6. ionic应用在mac上使用Xcode7.2(7C68)进行iphone真机测试
  7. python 点云配准,python点云滤波 点云配准用python怎
  8. linux:fdisk分区命令详解
  9. sublime php code sniffer,Sublime插件CodeSniffer配置
  10. 动态拼接LINQ查询条件
  11. 《打造Facebook》书摘(1):CEO小扎
  12. WOS搜索输出文件的格式整理
  13. Linux内核全版本下载地址
  14. 中国最大–深圳企业列表
  15. (附源码)python方块新闻 毕业设计 091600
  16. 2021-2027全球与中国可变自耦变压器市场现状及未来发展趋势
  17. 缠论指标【缠论指标】
  18. 孟子正文 活动目录(Active Directory)域故障解决实例(转载)
  19. 前端开发实习工作之关于git的每天使用浅谈
  20. 操作无法完成 计算机名不正确,操作无法完成,键入的打印机名不正确,或者指定的打印机没有连接到服务器上。怎么处理?...

热门文章

  1. matplotlib可视化基本散点图、在图像多个指定区域绘制方框、进行自定义色彩填充(Draw Multiple Rectangles)
  2. IPython和Jupyter关系及区别
  3. mysql里条件语句和循环语句_MySQL与Oracle 差异比较之四条件循环语句
  4. 用python汇总pdf文件_Python处理PDF文件-简译与总结
  5. JAVA基础4-循环语句
  6. java+long.builder_Java LongStream.Builder accept()用法及代码示例
  7. mysql常用linux命令大全_Linux-MySQL常用命令(示例代码)
  8. 手机 html5评测,三款主流手机浏览器HTML5性能横向评测
  9. 在Ubuntu16.04上安装CUDA
  10. Python-anaconda-Spyder使用matplotlib画图无法显示报错解决:Figures now render in the Plots pane by default. To mak