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 相关文章推荐
一个查看session内容的函数
Oct 09 PHP
PHP+APACHE实现用户论证的方法
Oct 09 PHP
PHP中cookies使用指南
Mar 16 PHP
黑夜路人出的几道php笔试题
Aug 04 PHP
php判断终端是手机还是电脑访问网站的思路及代码
Apr 24 PHP
PHP实现支持SSL连接的SMTP邮件发送类
Mar 05 PHP
php判断数组中是否存在指定键(key)的方法
Mar 17 PHP
护卫神php套件 php版本升级方法(php5.5.24)
May 10 PHP
使用PHP编写发红包程序
Jul 22 PHP
详谈symfony window下的安装 安装时候出现的问题以及解决方法
Sep 28 PHP
php的扩展写法总结
May 14 PHP
php让json_encode不自动转义斜杠“/”的方法
Apr 27 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 一个页面执行时间类代码
2010/03/05 PHP
解析php addslashes()与addclashes()函数的区别和比较
2013/06/24 PHP
浅谈PHP中单引号和双引号到底有啥区别呢?
2015/03/04 PHP
Code:findPosX 和 findPosY
2006/12/20 Javascript
JavaScript 题型问答有答案参考
2010/02/17 Javascript
一款js和css代码压缩工具[附JAVA环境配置方法]
2010/04/16 Javascript
JavaScript使用过程中需要注意的地方和一些基本语法
2010/08/26 Javascript
javascript中局部变量和全局变量的区别详解
2015/02/27 Javascript
web前端开发JQuery常用实例代码片段(50个)
2015/08/28 Javascript
JavaScript实现仿新浪微博大厅和腾讯微博首页滚动特效源码
2015/09/15 Javascript
js实现文件上传表单域美化特效
2015/11/02 Javascript
nodejs构建本地web测试服务器 如何解决访问静态资源问题
2017/07/14 NodeJs
JavaScript实现修改伪类样式
2017/11/27 Javascript
node基于async/await对mysql进行封装
2019/06/20 Javascript
Vue中util的工具函数实例详解
2019/07/08 Javascript
AntV F2和vue-cli构建移动端可视化视图过程详解
2019/10/08 Javascript
在Vue中使用Select选择器拼接label的操作
2020/10/22 Javascript
[07:57]DOTA2热力大趴狂欢夜 广州站活动回顾
2013/11/27 DOTA
[03:27]最受玩家喜爱奖提名:PZH_Element 致玩家寄语
2016/12/20 DOTA
[01:27:43]VGJ.S vs TNC Supermajor 败者组 BO3 第三场 6.6
2018/06/07 DOTA
学习python处理python编码问题
2011/03/13 Python
python numpy数组的索引和切片的操作方法
2018/10/20 Python
python爬虫的一个常见简单js反爬详解
2019/07/09 Python
PyQt5 界面显示无响应的实现
2020/03/26 Python
django正续或者倒序查库实例
2020/05/19 Python
python接口自动化之ConfigParser配置文件的使用详解
2020/08/03 Python
向全球直邮输送天然健康产品:iHerb.com
2020/05/03 全球购物
会计系毕业个人自荐信格式
2013/09/23 职场文书
教师个人鉴定材料
2014/02/08 职场文书
新闻编辑专业自荐信
2014/07/02 职场文书
发展党员工作情况汇报
2014/10/28 职场文书
自愿离婚协议书2015
2015/01/26 职场文书
2015年机关党委工作总结
2015/05/23 职场文书
千与千寻观后感
2015/06/04 职场文书
Jupyter notebook 更改文件打开的默认路径操作
2021/05/21 Python
MySQL实现用逗号进行拼接、以逗号进行分割
2022/12/24 MySQL