您的位置:首页 > 编程语言 > PHP开发

php对csv文件的读取,写入,输出下载操作

2011-02-24 21:30 1131 查看
<?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进行读写操作。

1.CSV的读取操作

 

view plaincopy to clipboardprint?

<?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); ?>

 

2.CSV的写入操作

 

view plaincopy to clipboardprint?

<?php   

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

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

  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); ?>

 

3.输出CSV(下载功能)

 

view plaincopy to clipboardprint?

<?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";   

?> 

4.输出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"; 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  csv php header file fp list