php导入csv文件,php实现CSV文件导入和导出
项目开发中,很多时候要将外部CSV文件导入到数据库中或者将数据导出为CSV文件,那么具体该如何实现呢?本文将使用PHP并结合mysql,实现了CSV格式数据的导入和导出功能。
我们先准备mysql数据表,假设项目中有一张记录学生信息的表student,并有id,name,sex,age分别记录学生的姓名、性别、年龄等信息。
我们还需要一个html交互页面,放置导入表单和导出按钮。
选择好本地csv文件后,点击导入,提交到do.php?action=import处理,而点击导出按钮则请求地址do.php?action=export进行数据导出处理。
1.导入CSV
do.php需要根据get过来的参数,分别处理导入和导出过程,php结构如下:
导入CSV处理流程:校验csv文件合法性(本文忽略)->打开读入并解析csv文件中的字段->循环获取各字段值->批量添加到数据表中->完成。
注意php自带的fgetcsv函数可以轻松处理csv,使用该函数可以从文件指针中读入一行并解析CSV字段。下面的函数将csv文件字段解析并以数组的形式返回。
此外在导入到数据库中时,我们采用的是批量插入而不是一条条插入的,因此在构建SQL语句时,要稍作处理,见代码。
2.导出CSV
我们知道csv文件是由逗号分割符组成的纯文本文件,你可以用excel打开,效果跟xls表个一样。
导出CSV处理流程:读取学生信息表->循环记录构建逗号分隔的字段信息->设置header信息->导出文件(下载)到本地
要将数据导出到本地即下在,需要修改header信息,代码如下:
注意导入和导出的过程中,因为我们使用的是统一UTF-8编码,遇到中文字符一定要记得转码,否则可能会出现中文乱码的情况。
以上就是本文的全部内容,希望本文所述对大家的php程序设计有所帮助。
php导入csv文件,php实现CSV文件导入和导出相关推荐
- R语言一次性读入多个csv文件实战:一次导入多个csv形成一个统一的dataframe、原生R方法、readr包、data.table
R语言一次性读入多个csv文件实战:一次导入多个csv形成一个统一的dataframe.原生R方法.readr包.data.table 目录
- python导入csv文件-Python从CSV文件导入数据和生成简单图表
原标题:Python从CSV文件导入数据和生成简单图表 我们已经完成Python的基础环境搭建工作,现在我们尝试导入CSV数据 我们准备一个csv测试数据,文件名是csv-test-data.csv数 ...
- python导入csv文件-python读写csv文件
今天闲来无事,写了会CSV,简单总结下csv具体操作 什么是csv 逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本 ...
- php mysql导出csv文件_详解PHP导入导出CSV文件
我们先准备mysql数据表,假设项目中有一张记录学生信息的表student,并有id,name,sex,age分别记录学生的姓名.性别.年龄等信息. CREATE TABLE `student` ( ...
- python操作sqlite3 导入csv文件_[转载]SQLite 3导入导出成txt或csv操作
平时使用官方提供的sqlite3.exe工具来操作 sqlite的数据库,可以在网上下到. 进入管理: sqlite3.exe d:\\test.db //假设数据是 d:\\test.db > ...
- python 导入csv文件到oracle_python将文件夹下的所有csv文件存入mysql和oracle数据库
#oracle版 首先新建python脚本(d:/python/orclImport.py) import os #引入os包 if __name__ == '__main__': #遍历文件夹下所有 ...
- 有字符csv文件导入matlab_Matlab:如何读取CSV文件以及如何读取带有字符串数据项的CSV文件...
CSV,逗号分开的文件,如果能快速的读取这些文件中的数据,无疑会帮助我们解决很多问题. 1. 只有数据的CSV文件,CSV file that includes only numbers. As an ...
- python读取dat文件写入表格_Pandas:外部文件数据导入/ 读取 (如 :csv、txt、tsv、dat、excel文件)、文件存储(to_csv、to_excel)...
一.文本文件读取 文本文件是一种由若干行字符构成的计算机文件,它是一种典型的顺序文件. csv是一种逗号分隔的文件格式,因为其分隔符不一定是逗号,又被称为字符分隔文件,文件以纯文本形式存储表格数据(数 ...
- 关于python使用pandas导入dat数据文件的方法(可导入任意dat数据文件和csv数据文件)
我相信大家在学习python中会遇到一些很苦恼的数据导入问题,csdn上面的数据导入五花八门,大多是在特定条件实行的数据导入,我在学习机器学习分类算法实现中发现csdn上面有很多dat数据文件,所以想 ...
最新文章
- Bossie Awards 2013:最佳开源数据中心和云软件
- python3 requests模块
- 3.cocos2dx它Menu,由menu为了实现场景切换
- Flutter下拉刷新,上拉加载更多数据
- ubuntu 软件包管理工具 dpkg,apt-get,aptitude 区别
- RabbitMQ消息确认以及return机制
- 【嵌入式Linux】嵌入式Linux应用开发基础知识之串口应用编程
- python 日志模块 日志格式
- JQuery安装与下载教程
- postgis/postsql 导入dem栅格数据到数据库
- DS18B20温度传感器
- 学生专用计算机abs什么意思,出现abs标志什么意思
- 《灵飞经》②东岛门人 第二章 知音可赏
- Java Service Wrapper将java程序设置为服务
- Java后端落地项目记录
- HTML之FrameSet,Frame和Iframe区别
- 软件外包市场发展现状分析
- 苹果邮箱 android设置字体,MacOS如何修改邮件字体大小?MacOS修改邮件字体大小的方法...
- 好看又好用的彩色口罩,舒适佩戴安全可靠
- 创建Java类并实例化
热门文章
- 采用无线网桥做监控有什么优势?无线网桥的组网模式有哪些?
- 电话光端机应用范围解析!电话光端机主要应用在哪些领域?
- 工业交换机如何预防雷电?
- [渝粤教育] 西南政法大学 法理学 参考 资料
- 【渝粤题库】国家开放大学2021春2517社区工作题目
- 物联网技术系列之3分钟了解无线MESH网络
- 探探自动配对PHP_CentOS7 - 安装Apache HTTP Server和PHP
- jq设置html的fontsize,Jquery 设置字体大小(font-size)与行高(line-height)
- 一个直角三角形的两个直角边是 a,b(a≤b),其斜边是 c,且 a,b,c都是正整数。现在我们已经知道了斜边长度c,请问这个直角三角形的两个直角边的长度是什么?Java
- Java面向对象(11)--多态性