您的位置:首页 > 其它

用CSV文件读写数据的两种方式

2014-01-16 11:15 232 查看
导读:有时候我们需要对收集的数据做统计,并在页面提供显示以及下载。除了对传统的excel存取之外,对CSV文件的存取也很重要。本文列出了这两种操作的详细代码。

代码:

<?php 

$file = fopen('text.csv','r');

while ($data = fgetcsv($file)) { //每次读取CSV里面的一行内容 

//print_r($data); //此为一个数组,要获得每一个数据,访问数组下标即可

$goods_list[] = $data;

}

//print_r($goods_list);

echo $goods_list[0][1];

fclose($file); 

?>

  在实际工作中,很多时候需要把网站上的一些数据下载到CSV文件里,方便以后查看。

亦或者是用CSV进行一些批量的上传工作。

这个时候我们就需要对CSV进行读写操作。
php CSV的读取操作

代码:

<?php 

$file = fopen('D:/file/file.csv','r'); 

while ($data = fgetcsv($file)) { //每次读取CSV里面的一行内容 

print_r($data); //此为一个数组,要获得每一个数据,访问数组下标即可 



fclose($file); 

?>

<?php $file = fopen('D:/file/file.csv','r'); while ($data = fgetcsv($file)) { //每次读取CSV里面的一行内容 print_r($data); //此为一个数组,要获得每一个数据,访问数组下标即可
} fclose($file); ?>

CSV的写入操作

代码:

<?php 

$fp = fopen('d:/file/file.csv', 'w'); 

fputcsv($fp,array('aaa','bbb','cccc')); // www.jbxue.com

fputcsv($fp,array('mmm','yyy','haha')); //fputcsv可以用数组循环的方式进行实现 

fclose($fp); 

?>

<?php $fp = fopen('d:/file/file.csv', 'w');

fputcsv($fp,array('aaa','bbb','cccc'));

fputcsv($fp,array('mmm','yyy','haha')); //fputcsv可以用数组循环的方式进行实现 fclose($fp);

?>

输出CSV(下载功能)

代码:

<?php 

header("Content-Type: text/csv"); 

header("Content-Disposition: attachment; filename=test.csv"); 

header('Cache-Control:must-revalidate,post-check=0,pre-check=0'); 

header('Expires:0'); 

header('Pragma:public'); 

echo "id,areaCode,areaName/n"; 

echo "1,cn,china/n"; 

echo "2,us,America/n"; 

?>

输出excel(下载功能)

header("Content-type:application/vnd.ms-excel"); 

header("Content-Disposition:filename=php100.xls");

echo "id,areaCode,areaName/n"; 

echo "1,cn,china/n"; 

echo "2,us,America/n";

969a
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: