php使用fputcsv()函数csv文件读写数据的方法


Posted in PHP onJanuary 06, 2015

本文实例讲述了php使用fputcsv()函数csv文件读写数据的方法。分享给大家供大家参考。具体分析如下:

fputcsv() 函数用于将数据格式为csv格式,以便写入文件或者数据库.

1.将字符串写入csv文件中,代码如下:

$test_array = array( 

    array("111","sdfsd","sdds","43344","rrrr"), 

    array("sssssssss","gdfgfd","232323","wwewe","dsfds"), 

    array("fgfg","e4343","dsfds","w2332","xcvxc"), 

    array("11212","2323","344343","344343","rerreer"), 

    array("fds","43344444","33333333","ttttttt","gggggggggggg"), 

    array("kdfs","dsfdsfds","wewewe","sdsdddddddd","wwwwwwwwwww")

); 

 

$file = fopen("test.csv","w") or die("Can't Open test.csv"); 

foreach($test_array as $line_array) 

{ 

    $isSuccess = fputcsv($file,$line_array); 

    print $isSuccess."<br>"; 

 if($isSuccess===false) 

    { 

        die("Can't write csv line".$line_array); 

    } 

} 

fclose($file) or die("Can't close file test.csv.");

fputcsv()函数返回所写入行的字符的个数或者false,当写入失败时返回false.

2.将格式化的csv字符串保存到字符串中,代码如下:

$test_array = array( 

        array("111","sdfsd","sdds","43344","rrrr"), 

        array("sssssssss","gdfgfd","232323","wwewe","dsfds"), 

        array("fgfg","e4343","dsfds","w2332","xcvxc"), 

        array("11212","2323","344343","344343","rerreer"), 

        array("fds","43344444","33333333","ttttttt","gggggggggggg"), 

        array("kdfs","dsfdsfds","wewewe","sdsdddddddd","wwwwwwwwwww") 

); 

ob_start(); 

$file = fopen("php://output","w") or die("Can't Open php://output"); 

foreach($test_array as $line_array) 

{ 

        $isSuccess = fputcsv($file,$line_array); 

        if($isSuccess===false) 

        { 

            die("Can't write csv line".$line_array); 

        } 

}
fclose($file) or die("Can't close file test.csv."); 

$result = ob_get_contents(); 

ob_end_clean();

以用fgetcsv(file,length,separator,enclosure)函数读取csv文件.

fgetcsv的参数说明如下:

file:需要读取的csv文件,此参数是必需的。

length:表示大于csv文件中最长的行的长度的值。php5之前是必需参数。在php5中是可选参数,如果不设置此参数或者将其设为0,php将会读取.

一整行的数据。如果行的长度超过8192个字节时,应该将length值设定一个数,而不是让php自动去计算行的长度。

separator:指定数据的分隔符,默认是逗号,如果指定为“;”,那么fgetcsv函数将按照“;”来解析行数据。

fgetcsv的返回值:

根据file的一行数据,返回一个数组,如果读取文件出错,则返回false,到达文件尾部时,也返回false.

下面是一个读取test.csv文件的例子:

$file = fopen('test.csv','r') or die("Can't open file test.csv"); 

$color="#ff0000"; 

print '<table border=0>'; 

while($csv_line=fgetcsv($file)) 

{ 

        print "<tr>"; 

        $len = count($csv_line); 

        for($i=0;$i<$len;$i++) 

        { 

            if($i%2==0)$color="#cccccc"; 

            else $color="#999999"; 

            print '<td bgcolor='.$color.'>'.htmlentities($csv_line[$i]).'</td>'; 

        } 

        print "</tr>"; 

} 

print '</table>'; 

fclose($file) or die("Can't close file test.csv!");

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

PHP 相关文章推荐
php中is_null,empty,isset,unset 的区别详细介绍
Apr 28 PHP
CI框架中libraries,helpers,hooks文件夹详细说明
Jun 10 PHP
php操作xml入门之xml基本介绍及xml标签元素
Jan 23 PHP
php将字符串转换成16进制的方法
Mar 17 PHP
typecho插件编写教程(二):写一个新插件
May 28 PHP
php检测文本的编码
Jul 26 PHP
php中array_column函数简单实现方法
Jul 11 PHP
PHP实现加密文本文件并限制特定页面的存取的效果
Oct 21 PHP
thinkphp整合微信支付代码分享
Nov 24 PHP
thinkphp自定义权限管理之名称判断方法
Apr 01 PHP
Thinkphp整合阿里云OSS图片上传实例代码
Apr 28 PHP
PHP利用pdo_odbc实现连接数据库示例【基于ThinkPHP5.1搭建的项目】
May 13 PHP
phplot生成图片类用法详解
Jan 06 #PHP
写一段简单的PHP建立文件夹代码
Jan 06 #PHP
php读取flash文件高宽帧数背景颜色的方法
Jan 06 #PHP
php自动获取关键字的方法
Jan 06 #PHP
windows7下php开发环境搭建图文教程
Jan 06 #PHP
PHP中$this和$that指针使用实例
Jan 06 #PHP
php缓冲输出实例分析
Jan 05 #PHP
You might like
php上传图片之时间戳命名(保存路径)
2014/08/15 PHP
PHP缓存集成库phpFastCache用法
2014/12/15 PHP
php实现留言板功能(会话控制)
2017/05/23 PHP
php实现socket推送技术的示例
2017/12/20 PHP
表格 隔行换色升级版
2009/11/07 Javascript
容易被忽略的JS脚本特性
2011/09/13 Javascript
js禁止页面刷新禁止用F5键刷新禁止右键的示例代码
2013/09/23 Javascript
jQuery选择器源码解读(一):Sizzle方法
2015/03/31 Javascript
JavaScript返回网页中锚点数目的方法
2015/04/03 Javascript
简述jQuery ajax的执行顺序
2016/01/05 Javascript
vue.js事件处理器是什么
2017/03/20 Javascript
vue中将html字符串转换成html后遇到的问题小结
2018/12/10 Javascript
vue-cli设置publicPath小记
2020/04/14 Javascript
vue-cli4使用全局less文件中的变量配置操作
2020/10/21 Javascript
Django实现自定义404,500页面教程
2017/03/26 Python
Python用61行代码实现图片像素化的示例代码
2018/12/10 Python
python 内置模块详解
2019/01/01 Python
简单了解python的一些位运算技巧
2019/07/13 Python
对python中 math模块下 atan 和 atan2的区别详解
2020/01/17 Python
使用tensorboard可视化loss和acc的实例
2020/01/21 Python
Python scrapy爬取小说代码案例详解
2020/07/09 Python
python 动态渲染 mysql 配置文件的示例
2020/11/20 Python
详解Pycharm第三方库的安装及使用方法
2020/12/29 Python
基于 HTML5 WebGL 实现的垃圾分类系统
2019/10/08 HTML / CSS
澳大利亚电子产品购物网站:Dick Smith
2017/02/02 全球购物
芬兰灯具网上商店:Nettilamppu.fi
2018/06/30 全球购物
.NET程序员的数据库面试题
2012/10/10 面试题
助人为乐表扬信范文
2014/01/14 职场文书
探亲邀请信范文
2014/01/30 职场文书
小学生竞选班长演讲稿
2014/04/24 职场文书
论文评语大全
2014/04/29 职场文书
通知格式
2015/04/27 职场文书
小学语文课《掌声》教学反思
2016/03/03 职场文书
人生感悟经典句子
2019/08/20 职场文书
Android开发之WECHAT微信小程序路由跳转的两种形式
2022/04/12 Java/Android
golang语言指针操作
2022/04/14 Golang