本文共 1602 字,大约阅读时间需要 5 分钟。
函数:
PHP有自带的分析.csv函数:fgetcsv
array fgetcsv ( int $handle [, int $length [, string $delimiter [, string $enclosure]]] )
handle 一个由 fopen()、popen() 或 fsockopen() 产生的有效文件指针。 length (可选)必须大于 CVS 文件内最长的一行。在 PHP 5 中该参数是可选的。如果忽略(在 PHP 5.0.4 以后的版本中设为 0)该参数的话,那么长度就没有限制,不过可能会影响执行效率。 delimiter (可选)设置字段分界符(只允许一个字符),默认值为逗号。 enclosure (可选)设置字段环绕符(只允许一个字符),默认值为双引号。该参数是在 PHP 4.3.0 中添加的。 和 fgets() 类似,只除了 fgetcsv() 解析读入的行并找出 CSV 格式的字段然后返回一个包含这些字段的数组。 fgetcsv() 出错时返回 FALSE,包括碰到文件结束时。 注意: CSV 文件中的空行将被返回为一个包含有单个 null 字段的数组,不会被当成错误。
fputcsv() ,fputcsv(file,fields,seperator,enclosure) .函数将行格式化为 CSV 并写入一个打开的文件。
该函数返回写入字符串的长度。若出错,则返回 false。。
1.CSV的读取操作
<?php $file = fopen('D:/file/file.csv','r');while ($data = fgetcsv($file)) { //每次读取CSV里面的一行内容 print_r($data);//此为一个数组,要获得每一个数据,访问数组下标即可 } fclose($file); ?>
2.CSV的写入操作
<?php $fp = fopen('d:/file/file.csv', 'w');fputcsv($fp,array('aaa','bbb','cccc'));fputcsv($fp,array('mmm','yyy','haha')); //fputcsv可以用数组循环的方式进行实现fclose($fp); ?>
3.输出CSV(下载功能)
转载地址:http://gyadi.baihongyu.com/