PHP将Excel导入数据库及数据库数据导出至Excel的方法


Posted in PHP onJune 24, 2015

本文实例讲述了PHP将Excel导入数据库及数据库数据导出至Excel的方法。分享给大家供大家参考。具体实现方法如下:

一.导入

导入需要使用能读取Excel的组件,网上也有比较好的组件,这里分享我使用的:下载  提取码:vxyn。(注意两个文件有引用关系)

<?php
//传入要导入的Excel的文件名
function import_to_DB($filename) {
  require_once'reader.php';
  $data = new Spreadsheet_Excel_Reader();
  //创建读取Excel的对象
  $data->setOutputEncoding('utf-8');
  //设置读取Excel内容后输出的字符编码
  $data->read("data/Excel/{$filename}.xls");
  $db = mysql_connect('localhost', '用户名', '密码') or die("Could not connect to database.");
  //连接数据库  
  mysql_query("set names 'uft8'");
  //输出中文  
  mysql_select_db('数据库名');
  //选择数据库  
  error_reporting(E_ALL ^ E_NOTICE);
  for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) {
    echo $data->sheets[0]['cells'][$i][列数];
    //这里可以把每一行相应列的值插到数据库中,如:
    /*
    $sql="insert "表名" values(对应项...)";
    mysql_query($sql);
    可加上错误判断
    */ 
  } 
?>

总之,能够读出表格中每一行中的相应列$data->sheets[0][行][列]的值,插入操作就好办了。

二.导出

导出可以利用MIME协议轻松导出表格文件,不用依赖任何组件。按如下格式设置header即可导出Excel,同时浏览器进行下载

header('Content-type: text/html; charset=utf-8');
header("Content-type:application/vnd.ms-excel;charset=UTF-8"); //application/vnd.ms-excel指定输出Excel格式
header("Content-Disposition:filename=表格文件名.xls");
//输出的表格名称

完整代码如下:

<?php 
header('Content-type: text/html; charset=utf-8');
header("Content-type:application/vnd.ms-excel;charset=UTF-8"); 
header("Content-Disposition:filename=表格文件名.xls");
$conn = mysql_connect("localhost","root","数据库密码") or die("不能连接数据库");
mysql_select_db("数据库名", $conn);
mysql_query("set names 'UTF-8'");
$sql="select * from 表名 where 条件";
$result=mysql_query($sql);
echo "表头1\t表头2\t表头3\n";
while($row=mysql_fetch_array($result)){
  echo $row[0]."\t".$row[1]."\t".$row[2]."\n";
}
?>

这里其实\t就是换格,\n就是换行。在一个网页中设置这个php文件的链接,当点击时浏览器会自动把传过来的流保存为Excel文件。

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
PHP Switch 语句之学习笔记
Sep 21 PHP
PHP解析html类库simple_html_dom的转码bug
May 22 PHP
PHP比你想象的好得多
Nov 27 PHP
php查询ip所在地的方法
Dec 05 PHP
PHP中使用CURL获取页面title例子
Jan 07 PHP
php使用curl打开https网站的方法
Jun 17 PHP
PHP获取昨天、今天及明天日期的方法
Feb 03 PHP
Yii实现显示静态页的方法
Apr 25 PHP
php反射类ReflectionClass用法分析
May 12 PHP
php魔法函数与魔法常量使用介绍
Jul 23 PHP
基于Laravel5.4实现多字段登录功能方法示例
Aug 11 PHP
php中目录操作opendir()、readdir()及scandir()用法示例
Jun 08 PHP
php异常处理方法实例汇总
Jun 24 #PHP
php数组索引与键值操作技巧实例分析
Jun 24 #PHP
PHP实现在线阅读PDF文件的方法
Jun 23 #PHP
php中header设置常见文件类型的content-type
Jun 23 #PHP
PHP register_shutdown_function()函数的使用示例
Jun 23 #PHP
PHP配置把错误日志以邮件方式发送方法(Windows系统)
Jun 23 #PHP
PHP中把错误日志保存在系统日志中(Windows系统)
Jun 23 #PHP
You might like
php简单日历函数
2015/10/28 PHP
Yii2学习笔记之汉化yii设置表单的描述(属性标签attributeLabels)
2017/02/07 PHP
PHP实现提高SESSION响应速度的几种方法详解
2019/08/09 PHP
超棒的javascript页面顶部卷动广告效果
2007/12/01 Javascript
JS的数组的扩展实例代码
2008/07/09 Javascript
JavaScript入门教程(5) js Screen屏幕对象
2009/01/31 Javascript
基于jquery的blockui插件显示弹出层
2011/04/14 Javascript
JavaScript中去掉数组中的重复值的实现方法
2011/08/03 Javascript
js URL参数的拼接方法比较
2012/02/15 Javascript
jQuery判断iframe中元素是否存在的方法
2013/05/11 Javascript
HTML5 Shiv完美解决IE(IE6/IE7/IE8)不兼容HTML5标签的方法
2015/11/25 Javascript
window.open打开窗口被拦截的快速解决方法
2016/08/04 Javascript
jQuery下拉菜单的实现代码
2016/11/03 Javascript
利用node.js+mongodb如何搭建一个简单登录注册的功能详解
2017/07/30 Javascript
JS一个简单的注册页面实例
2017/09/05 Javascript
深入理解JavaScript和TypeScript中的class
2018/04/22 Javascript
vue 使用async写数字动态加载效果案例
2020/07/18 Javascript
Vue使用axios引起的后台session不同操作
2020/08/14 Javascript
Node.js利用Express实现用户注册登陆功能(推荐)
2020/10/26 Javascript
[36:45]TNC vs VGJ.S 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
在Python的web框架中编写创建日志的程序的教程
2015/04/30 Python
Python判断两个对象相等的原理
2017/12/12 Python
python3实现域名查询和whois查询功能
2018/06/21 Python
浅谈python下含中文字符串正则表达式的编码问题
2018/12/07 Python
Django项目后台不挂断运行的方法
2019/08/31 Python
python如何实现不用装饰器实现登陆器小程序
2019/12/14 Python
Python使用py2neo操作图数据库neo4j的方法详解
2020/01/13 Python
From CSV to SQLite3 by python 导入csv到sqlite实例
2020/02/14 Python
详解Python3中的 input() 函数
2020/03/18 Python
用python实现一个简单计算器(完整DEMO)
2020/10/14 Python
利用html5 canvas破解简单验证码及getImageData接口应用
2013/01/25 HTML / CSS
稀有和绝版书籍:Biblio.com
2017/02/02 全球购物
2015年安全生产责任书
2015/01/30 职场文书
社会实践活动总结
2015/02/05 职场文书
社区青年志愿者活动总结
2015/05/06 职场文书
幼儿园教师心得体会范文
2016/01/21 职场文书