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服务器实现多session并发运行
Oct 09 PHP
php 删除数组元素
Jan 16 PHP
PHP和.net中des加解密的实现方法
Feb 27 PHP
php jquery 多文件上传简单实例
Dec 23 PHP
php导出word文档与excel电子表格的简单示例代码
Mar 08 PHP
老版本PHP转义Json里的特殊字符的函数
Jun 08 PHP
YiiFramework入门知识点总结(图文教程)
Dec 28 PHP
PHP实现的网站目录扫描索引工具
Sep 08 PHP
thinkPHP数据库增删改查操作方法实例详解
Dec 06 PHP
iOS+PHP注册登录系统 PHP部分(上)
Dec 26 PHP
tp5框架使用composer实现日志记录功能示例
Jan 10 PHP
PHP下用Swoole实现Actor并发模型的方法
Jun 12 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
DOTA2游戏同人动画《龙之血》导演接受采访
2021/03/05 欧美动漫
PHP封装的验证码工具类定义与用法示例
2018/08/22 PHP
PHP解析url并得到url参数方法总结
2018/10/11 PHP
Yii2框架控制器、路由、Url生成操作示例
2019/05/27 PHP
Nginx+php配置文件及原理解析
2020/12/09 PHP
一直复略了的一个问题,关于表单重复提交
2007/02/15 Javascript
JavaScript中json使用自己总结
2013/08/13 Javascript
jQuery 绑定事件到动态创建的元素上的方法实例
2013/08/18 Javascript
关于jquery的多个选择器的使用示例
2013/10/18 Javascript
JavaScript改变HTML元素的样式改变CSS及元素属性
2013/11/12 Javascript
node.js开机自启动脚本文件
2014/12/24 Javascript
js实现checkbox全选、不选与反选的方法
2015/02/09 Javascript
js如何判断访问是来自搜索引擎(蜘蛛人)还是直接访问
2015/09/14 Javascript
JavaScript编程中实现对象封装特性的实例讲解
2016/06/24 Javascript
Angular2 环境配置详细介绍
2016/09/21 Javascript
值得分享的JavaScript实现图片轮播组件
2016/11/21 Javascript
JS简单实现自定义右键菜单实例
2017/05/31 Javascript
Windows安装Node.js报错:2503、2502的解决方法
2017/10/25 Javascript
ES6中Class类的静态方法实例小结
2017/10/28 Javascript
JS实现的杨辉三角【帕斯卡三角形】算法示例
2019/02/26 Javascript
MySQL最常见的操作语句小结
2015/05/07 Python
Python中使用Queue和Condition进行线程同步的方法
2016/01/19 Python
python里使用正则的findall函数的实例详解
2017/10/19 Python
python3实现多线程聊天室
2018/12/12 Python
flask框架url与重定向操作实例详解
2020/01/25 Python
Python创建空列表的字典2种方法详解
2020/02/13 Python
基于python纯函数实现井字棋游戏
2020/05/27 Python
Python Charles抓包配置实现流程图解
2020/09/29 Python
CSS3 渐变(Gradients)之CSS3 线性渐变
2016/07/08 HTML / CSS
中国电子产品批发商/跨境电商/外贸网:Sunsky-online
2020/04/20 全球购物
单位未婚证明范本
2014/01/18 职场文书
环保建议书500字
2014/05/14 职场文书
年终工作总结范文2014
2014/11/27 职场文书
八一建军节主持词
2015/07/01 职场文书
带你彻底理解JavaScript中的原型对象
2021/04/14 Javascript
Win11电源已接通但未充电怎么办?Win11电源已接通未充电的解决方法
2022/04/05 数码科技