php 中fgetcsv函数将csv文件导入mysql数据库

在处理大批量excel数据到mysql数据库时,用php自带的fgetcsv函数先从csv文件中逐行获取数据,再配合sql语句导入数据库,如果遇到了乱码问题,可以使用iconv函数进行转码。

代码示例:

 代码如下 复制代码

<?php
$row = 1;
$handle = fopen("test.csv","r");
while ($data = fgetcsv($handle, 1000, ",")) {//1000为csv文件总行数,逗号是数据分隔符,这两个参数均可以忽略不写
$num = count($data);
echo "<p> 第 $row行有$num个字段。 <br>n";
$row++;
for ($c=0; $c < $num; $c++) {
echo $data[$c] . "<br>n";
}
}
fclose($handle);
?>

导入mysql时中文乱码

用网上通用的方法读取并上传csv文件内容进入mysql数据库中时,中文显示乱码,即使对数据用iconv函数转码后仍然乱码,这时可以用setlocale()函数:

这个函数经查阅是配置地域信息用的,在读取和写入csv数据前先用此函数进行定义,比如我的csv文件是无BOM的UTF-8格式,就先用如下函数进行定义:

 代码如下 复制代码

setlocale(LC_ALL, 'zh_CN.UTF8′);

然后再用iconv函数对数据内容进行转码入库等后续操作。

时间: 2025-01-29 20:44:27

php 中fgetcsv函数将csv文件导入mysql数据库的相关文章

csv 文件导入mysql 数据库 ,提示文件找不到什么原因?

问题描述 csv 文件导入mysql 数据库 ,提示文件找不到什么原因? LOAD DATA INFILE "D:/csv03011039.csv" REPLACE INTO TABLE download_csv CHARACTER SET utf8 FIELDS TERMINATED BY "," ENCLOSED BY "" LINES TERMINATED BY "rn"; 解决方案 d:xxx.csv 注意文件路径

csv文件导入到数据库时字段中的分隔符怎么屏蔽

问题描述 csv文件导入到数据库时字段中的分隔符怎么屏蔽 csv文件导入到数据库过程中,字段中有分隔符的情况应该怎么处理呢?维基百科上说应该用双引号包裹,但这样并没有效果.我用的是sql server2012,请大神指教.

PHP把excel(xls)文件导入mysql数据库

昨晚一个客户联系我做网站,提出的要求是需要把客户提供的excel文件里面的数据导入到mysql数据库,最常用的方法就是先把xls文件导出为csv格式的文件,然后在解析csv格式的文件导入到mysql数据库.方法比较冗余,而且分好几步进行,很不方便,断桥残雪今天介绍一种方法是直接跳过csv的中间环节,直接把excel文件导入mysql数据库. 首先我们需要下载PHP-ExcelReader这是一个开源的项目,主要是来解析excel的文件,下载地址:http://sourceforge.net/pr

PHP把导入和导出CSV文件到mysql数据库方法

下面只是一个简单的实例 我们先准备mysql数据表,假设项目中有一张记录学生信息的表student,并有id,name,sex,age分别记录学生的姓名.性别.年龄等信息.  代码如下 复制代码 CREATE TABLE `student` (    `id` int(11) NOT NULL auto_increment,    `name` varchar(50) NOT NULL,    `sex` varchar(10) NOT NULL,    `age` smallint(3) NO

csv文件导入到数据库-怎么把淘宝csv文件图片全部提出到本地

问题描述 怎么把淘宝csv文件图片全部提出到本地 把淘宝.csv文件全部图片提取到本地.再淘宝助理上传到自己的淘宝空间里. 解决方案 写代码,把图片URL从CSV文件里面提取出来,然后用程序下载这些图片,存放在本地. 如果图片URL是有规律的也可以考虑使用CURL命令获取,可以参考我的博文:http://blog.y9i.net/batch-download-files-with-curl-from-website/

php实现CSV文件导入和导出_php技巧

项目开发中,很多时候要将外部CSV文件导入到数据库中或者将数据导出为CSV文件,那么具体该如何实现呢?本文将使用PHP并结合mysql,实现了CSV格式数据的导入和导出功能. 我们先准备mysql数据表,假设项目中有一张记录学生信息的表student,并有id,name,sex,age分别记录学生的姓名.性别.年龄等信息. CREATE TABLE `student` ( `id` int(11) NOT NULL auto_increment, `name` varchar(50) NOT N

csv-CSV文件导入mysql,长整型报错

问题描述 CSV文件导入mysql,长整型报错 CSV文件的第一列是序号,可能有7-8位长,只一个长整型的数据.用 sqlyog工具导入CSV 文件时,这行序号报错,Incorrect integer value:'1060165' for column 'id' at row 2 解决方案 将CSV文件导入mysqlMysql 导入csv文件mysql导出到csv文件报错 解决方案二: 你的mysql中的id设置的什么类型的? 删掉那一行看看其他行有问题不? 改掉那个值换成100什么的的试试看

怎么把sql文件导入postgresql数据库

问题描述 怎么把sql文件导入postgresql数据库 1C 我这里有个*.sql文件 想把他导入到PostgreSQL数据库中 ,我是新手 什么都不懂 请知道的朋友 帮助帮助我 请解答的时候详细点 我很笨 谢谢~~ 解决方案 postgresql 导入sql文件**.sql文件导入mysql数据库将数据库的SQL脚本文件导入到oracle中 解决方案二: 直接把语句复制进去里面执行就好了 解决方案三: 1.安装postgresqlyum install postgresql postgres

java的excel表格上传实现导入mysql数据库功能

问题描述 java的excel表格上传实现导入mysql数据库功能 在网页上有个按钮要实现点击按钮选择文件实现将文件导入mysql数据库的功能,上百度不知道应该用什么关键词搜索,求技术大牛给个网址 解决方案 参考一下 import java.io.FileInputStream;<br> import java.io.IOException;<br> import java.sql.Connection;<br> import java.sql.DriverManage