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


Posted in PHP onAugust 10, 2013
<?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 相关文章推荐
PHP下用rmdir实现删除目录的三种方法小结
Apr 20 PHP
php中强制下载文件的代码(解决了IE下中文文件名乱码问题)
May 09 PHP
供参考的 php 学习提高路线分享
Oct 23 PHP
php猜单词游戏
Sep 29 PHP
PHP实现伪静态方法汇总
Jan 13 PHP
Laravel5.1自定义500错误页面示例
Oct 09 PHP
Docker配置PHP开发环境教程
Dec 21 PHP
简单实现php上传文件功能
Sep 21 PHP
PHP完全二叉树定义与实现方法示例
Oct 09 PHP
PHP有序表查找之二分查找(折半查找)算法示例
Feb 09 PHP
PHP的PDO预处理语句与存储过程
Jan 27 PHP
php设计模式之正面模式实例分析【星际争霸游戏案例】
Mar 24 PHP
将word转化为swf 如同百度文库般阅读实现思路及代码
Aug 09 #PHP
php var_export与var_dump 输出的不同
Aug 09 #PHP
页面乱码问题的根源及其分析
Aug 09 #PHP
浅析PHP原理之变量(Variables inside PHP)
Aug 09 #PHP
浅析PHP原理之变量分离/引用(Variables Separation)
Aug 09 #PHP
php中如何使对象可以像数组一样进行foreach循环
Aug 09 #PHP
php接口与接口引用的深入解析
Aug 09 #PHP
You might like
新手学PHP之数据库操作详解及乱码解决!
2007/01/02 PHP
php读取mysql的简单实例
2014/01/15 PHP
用js判断用户浏览器是否是XP SP2的IE6
2007/03/08 Javascript
javascript 短路法代码精简
2009/08/20 Javascript
在javascript中关于节点内容加强
2013/04/11 Javascript
JQUERY 获取IFrame中对象及获取其父窗口中对象示例
2013/08/19 Javascript
jQuery中filter()方法用法实例
2015/01/06 Javascript
使用JavaScript为Kindeditor自定义按钮增加Audio标签
2016/03/18 Javascript
js滚动条平滑移动示例代码
2016/03/29 Javascript
JavaScript实现水平进度条拖拽效果
2017/01/18 Javascript
彻底解决 webpack 打包文件体积过大问题
2017/07/07 Javascript
原生JS实现获取及修改CSS样式的方法
2018/09/04 Javascript
BootStrap中的模态框(modal,弹出层)功能示例代码
2018/11/02 Javascript
解决vue v-for src 图片路径问题 404
2019/11/12 Javascript
JavaScript 引用类型实例详解【数组、对象、严格模式等】
2020/05/13 Javascript
微信小程序实现时间戳格式转换
2020/07/20 Javascript
如何利用javascript接收json信息并进行处理
2020/08/06 Javascript
python赋值操作方法分享
2013/03/23 Python
python操作mysql数据库
2017/03/05 Python
pandas object格式转float64格式的方法
2018/04/10 Python
Python实现的直接插入排序算法示例
2018/04/29 Python
Python实现正弦信号的时域波形和频谱图示例【基于matplotlib】
2018/05/04 Python
python-itchat 统计微信群、好友数量,及原始消息数据的实例
2019/02/21 Python
Django框架中序列化和反序列化的例子
2019/08/06 Python
Python笔记之观察者模式
2019/11/20 Python
pandas-resample按时间聚合实例
2019/12/27 Python
Python imutils 填充图片周边为黑色的实现
2020/01/19 Python
携程英文网站:Trip.com
2017/02/07 全球购物
Smilodox官方运动服装店:从运动服到健身配件
2020/08/27 全球购物
在网络中有两台主机A和B,并通过路由器和其他交换设备连接起来,已经确认物理连接正确无误,怎么来测试这两台机器是否连通?如果不通,怎么来判断故障点?怎么排
2014/01/13 面试题
低碳生活的宣传标语
2014/06/23 职场文书
2014离婚协议书范文
2014/09/10 职场文书
护士2014年终工作总结
2014/11/11 职场文书
2015年全国爱眼日活动方案
2015/05/05 职场文书
公司员工管理制度
2015/08/04 职场文书
七年级语文教学反思
2016/03/03 职场文书