zl程序教程

您现在的位置是:首页 >  后端

当前栏目

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

PHP文件下载输出 详解 操作 读取 写入
2023-06-13 09:15:04 时间

复制代码代码如下:


<?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进行读写操作。

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