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 相关文章推荐
ftp类(example.php)
Oct 09 PHP
Mysql的常用命令
Oct 09 PHP
用PHP的ob_start();控制您的浏览器cache!
Nov 25 PHP
IIS下PHP连接数据库提示mysql undefined function mysql_connect()
Jun 04 PHP
php 生成短网址原理及代码
Jan 23 PHP
php获取字符串中各个字符出现次数的方法
Feb 23 PHP
php文档工具PHP Documentor安装与使用方法
Jan 25 PHP
Zend Framework入门之环境配置及第一个Hello World示例(附demo源码下载)
Mar 21 PHP
PHP 二级子目录(后台目录)设置二级域名
Mar 02 PHP
PHP依赖注入原理与用法分析
Aug 21 PHP
PHP聊天室简单实现方法详解
Dec 08 PHP
php 多继承的几种常见实现方法示例
Nov 18 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中extract()函数的定义和用法
2012/08/17 PHP
CentOS下PHP安装Oracle扩展
2015/02/15 PHP
php7新特性的理解和比较总结
2019/04/14 PHP
分享十五个最佳jQuery 幻灯插件和教程
2010/03/27 Javascript
jquery ajax 简单范例(界面+后台)
2013/11/19 Javascript
Firefox下无法正常显示年份的解决方法
2014/09/04 Javascript
node.js中的socket.io的广播消息
2014/12/15 Javascript
Vue2学习笔记之请求数据交互vue-resource
2017/02/23 Javascript
详解AngularJS ng-class样式切换
2017/06/27 Javascript
浅谈开发eslint规则
2018/10/01 Javascript
webpack4.0 入门实践教程
2018/10/08 Javascript
vue中使用cookies和crypto-js实现记住密码和加密的方法
2018/10/18 Javascript
AngularJS 多指令Scope问题的解决
2018/10/25 Javascript
uni-app 组件里面获取元素宽高的实现
2019/12/27 Javascript
vue瀑布流组件实现上拉加载更多
2020/03/10 Javascript
原生js实现放大镜组件
2021/01/22 Javascript
[01:28:31]《加油DOTA》真人秀 第五期
2014/09/01 DOTA
python局部赋值的规则
2013/03/07 Python
Python面向对象编程中关于类和方法的学习笔记
2016/06/30 Python
Python random模块用法解析及简单示例
2017/12/18 Python
值得收藏的10道python 面试题
2019/04/15 Python
Python远程视频监控程序的实例代码
2019/05/05 Python
python虚拟环境的安装和配置(virtualenv,virtualenvwrapper)
2019/08/09 Python
Python 写入训练日志文件并控制台输出解析
2019/08/13 Python
Python性能测试工具Locust安装及使用
2020/12/01 Python
TCP/IP的分层模型
2013/10/27 面试题
毕业生的自我鉴定该怎么写
2013/12/02 职场文书
《灰椋鸟》教学反思
2014/04/27 职场文书
党的群众路线教育实践方案
2014/05/11 职场文书
企业安全生产目标责任书
2014/07/23 职场文书
竞选班干部演讲稿500字
2014/08/20 职场文书
领导班子个人查摆问题对照检查材料
2014/10/02 职场文书
个人更名证明
2015/06/23 职场文书
PyTorch 实现L2正则化以及Dropout的操作
2021/05/27 Python
微软Win11什么功能最惊艳? Windows11新功能特性汇总
2021/11/21 数码科技
剖析后OpLog订阅MongoDB的数据变更就没那么难了
2022/02/24 MongoDB