基于PHP读取csv文件内容的详解


Posted in PHP onJune 18, 2013

一次性读取csv文件内所有行的数据

<?php 
$file = fopen('windows_2011_s.csv','r'); 
while ($data = fgetcsv($file)) { //每次读取CSV里面的一行内容
//print_r($data); //此为一个数组,要获得每一个数据,访问数组下标即可
$goods_list[] = $data;
 }
//print_r($goods_list);
/* foreach ($goods_list as $arr){
    if ($arr[0]!=""){
        echo $arr[0]."<br>";
    }
} */
 echo $goods_list[2][0];
 fclose($file);
?>

读取csv文件的某一行数据
<?php
function get_file_line( $file_name, $line ){
  $n = 0;
  $handle = fopen($file_name,'r');
  if ($handle) {
    while (!feof($handle)) {
        ++$n;
        $out = fgets($handle, 4096);
        if($line==$n) break;
    }
    fclose($handle);
  }
  if( $line==$n) return $out;
  return false;
}
echo get_file_line("windows_2011_s.csv", 10);
?>

读取csv文件制定行数(行区间)
<?php
function get_file_line( $file_name, $line_star,  $line_end){
    $n = 0;
    $handle = fopen($file_name,"r");
    if ($handle) {
        while (!feof($handle)) {
            ++$n;
            $out = fgets($handle, 4096);
            if($line_star <= $n){
                $ling[] = $out;
            }
            if ($line_end == $n) break;
        }
        fclose($handle);
    }
    if( $line_end==$n) return $ling;
    return false;
}
$aa = get_file_line("windows_2011_s.csv", 11, 20);  //从第11行到第20行
foreach ($aa as $bb){
    echo $bb."<br>";
}
?>

另外从网上找的两种方法(没测试,不知道好不好使)
<?
$handle=fopen("1.csv","r");
while(!feof($handle)){
$buffer=fgetss($handle,2048);
$data=explode(",",$buffer);
$num=count($data);
for($i=0;$i<$num;$i++){
print_r($data);
}
}
?>

<?
$handle=fopen("1.csv","r");
$row=1;
while($data=fgetcsv($handle,1000,",")){
$num=count($data);
for($i=0;$i<$num;$i++){
echo $data[$i];
}
$row++;
}
?>

PHP 相关文章推荐
一个可查询所有表的“通用”查询分页类
Oct 09 PHP
Php+SqlServer实现分页显示
Oct 09 PHP
Apache, PHP在Windows 9x/NT下的安装与配置 (二)
Oct 09 PHP
PHP学习之整理字符串
Apr 17 PHP
PHP header()函数使用详细(301、404等错误设置)
Apr 17 PHP
探讨PHP删除文件夹的三种方法
Jun 09 PHP
PHP中使用虚代理实现延迟加载技术
Nov 05 PHP
php表单提交与$_POST实例分析
Jan 26 PHP
php源码分析之DZX1.5加密解密函数authcode用法
Jun 17 PHP
在PHP 7下安装Swoole与Yar,Yaf的方法教程
Jun 02 PHP
关于 Laravel Redis 多个进程同时取队列问题详解
Dec 25 PHP
PHP耦合设计模式实例分析
Aug 08 PHP
解析CodeIgniter自定义配置文件
Jun 18 #PHP
Yii PHP Framework实用入门教程(详细介绍)
Jun 18 #PHP
深入array multisort排序原理的详解
Jun 18 #PHP
解析PHP工厂模式的好处
Jun 18 #PHP
PHP实现邮件群发的源码
Jun 18 #PHP
解析PHP跨站刷票的实现代码
Jun 18 #PHP
解析PHP SPL标准库的用法(遍历目录,查找固定条件的文件)
Jun 18 #PHP
You might like
合作指挥官:孟斯克
2020/03/16 星际争霸
网络图片延迟加载实现代码 超越jquery控件
2010/03/27 Javascript
js实现一个省市区三级联动选择框代码分享
2013/03/06 Javascript
详解JavaScript中void语句的使用
2015/06/04 Javascript
jQuery实现二级下拉菜单效果
2016/01/05 Javascript
老生常谈遮罩层 滚动条的问题
2016/04/29 Javascript
Bootstrap组件系列之福利篇几款好用的组件(推荐)
2016/06/23 Javascript
功能强大的jquery.validate表单验证插件
2016/11/07 Javascript
JS+DIV实现的卷帘效果示例
2017/03/22 Javascript
详解基于webpack和vue.js搭建开发环境
2017/04/05 Javascript
Angular 2父子组件数据传递之@ViewChild获取子组件详解
2017/07/04 Javascript
js自定义弹框插件的封装
2020/08/24 Javascript
在iframe中使bootstrap的模态框在父页面弹出问题
2017/08/07 Javascript
JavaScript监听手机物理返回键的两种解决方法
2017/08/14 Javascript
Vue axios 将传递的json数据转为form data的例子
2019/10/29 Javascript
[00:37]DOTA2上海特级锦标赛 Secert 战队宣传片
2016/03/03 DOTA
Python中的Numeric包和Numarray包使用教程
2015/04/13 Python
python中的变量如何开辟内存
2018/06/26 Python
python中int与str互转方法
2018/07/02 Python
如何优雅地改进Django中的模板碎片缓存详解
2018/07/04 Python
Python3实现腾讯云OCR识别
2018/11/27 Python
pycharm运行程序时在Python console窗口中运行的方法
2018/12/03 Python
python无限生成不重复(字母,数字,字符)组合的方法
2018/12/04 Python
Python-while 计算100以内奇数和的方法
2019/06/11 Python
Pyqt5 基本界面组件之inputDialog的使用
2019/06/25 Python
Python 使用PyQt5 完成选择文件或目录的对话框方法
2019/06/27 Python
flask的orm框架SQLAlchemy查询实现解析
2019/12/12 Python
conda安装tensorflow和conda常用命令小结
2021/02/20 Python
html5 利用重力感应实现摇一摇换颜色可用来做抽奖等等
2014/05/07 HTML / CSS
倩碧美国官网:Clinique美国
2016/07/20 全球购物
护理专业的自荐信
2013/10/22 职场文书
大学生职业生涯规划书的基本内容
2014/01/06 职场文书
亲属关系公证书
2014/04/08 职场文书
工程进度款催款函
2015/06/24 职场文书
2016年五一国际劳动节活动总结
2016/04/06 职场文书
mysql多表查询-笔记七
2021/04/05 MySQL