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

yipeiwu_com7年前PHP代码库

复制代码 代码如下:

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

相关文章

php之readdir函数用法实例

本文实例讲述了php中readdir函数用法。分享给大家供大家参考。具体用法分析如下: 定义和用法:readdir() 函数返回由 opendir() 打开的目录句柄中的条目,若成功,则...

PHP实现文件下载断点续传详解

如果我们的网站提供文件下载的服务,那么通常我们都希望下载可以断点续传(Resumable Download),也就是说用户可以暂停下载,并在未来的某个时间从暂停处继续下载,而不必重新下载...

php.ini修改php上传文件大小限制的方法详解

打开php.ini,首先找到file_uploads = on ;是否允许通过HTTP上传文件的开关。默认为ON即是开upload_tmp_dir ;文件上传至服务器上存储临时文件的地方...

深入解析PHP中的(伪)多线程与多进程

(伪)多线程:借助外力利用WEB服务器本身的多线程来处理,从WEB服务器多次调用我们需要实现多线程的程序。QUOTE:我们知道PHP本身是不支持多线程的, 但是我们的WEB服务器是支持多...

PHP实现SMTP邮件的发送实例

当你还在纠结php内置的mail()函数不能发送邮件时,那么你现在很幸运,此时的这篇文章可以帮助到你! php利用smtp类来发邮件真是屡试不爽,我用过很久了,基本上没出过问题。本博客后...