php读取csv数据保存到数组的方法


Posted in PHP onJanuary 03, 2015

本文实例讲述了php读取csv数据保存到数组的方法。分享给大家供大家参考。具体分析如下:

csv是常用的excel格式的替代品,很多时候我们导出数据是都会导成csv格式的,这样和excel没什么区别,下面的程序是要读取csv数据保存到数组我们要对数据进行操作,所以保存到数据,代码如下:

$info=csvtoarray::open('teste.csv'); 

//echo '<pre>'; 

//print_r($info); 

//echo '</pre>'; 

foreach ($info as $c) 

 { 

  echo '学号:'.$c[0]; 

  echo '姓名:'.$c[1]; 

  echo '年龄:'.$c[2]; 

  echo '身高:'.$c[3].'<br>'; 

 } 

 

 

 final class csvtoarray{ 

 

  /** 

   * 把csv文件解析为一个数组返回 

   * 

   * @param string $file 要解析的csv文件路径  

   * @param char $delimiter csv文件里的内容分隔符 默认为; 

   * @return array 

   */ 

  public static function open($file, $delimiter = ';'){ 

   return self::ordenamultiarray(self::csvarray($file, $delimiter), 1); 

  } 

 

  private function csvarray($file, $delimiter) 

  { 

   $result = array(); 

   $size = filesize($file) + 1; 

   $file = fopen($file, 'r'); 

   $keys = fgetcsv($file, $size, $delimiter); 

   fseek($file,0);//这里原来的没有..自己加上..这样能读取到第一行的内容 

   while ($row = fgetcsv($file, $size, $delimiter)) 

   { 

    for($i = 0; $i < count($row); $i++) 

    { 

     if(array_key_exists($i, $keys)) 

     { 

      $row[$keys[$i]] = $row[$i]; 

     } 

    } 

    print_r($row); 

    $result[] = $row; 

   } 

 

   fclose($file); 

 

   return $result; 

  } 

  private function ordenamultiarray($multiarray, $secondindex) 

  {

   while (list($firstindex, ) = each($multiarray)) 

   $indexmap[$firstindex] = $multiarray[$firstindex][$secondindex]; 

   asort($indexmap); 

   while (list($firstindex, ) = each($indexmap)) 

   if (is_numeric($firstindex)) 

   $sortedarray[] = $multiarray[$firstindex]; 

   else $sortedarray[$firstindex] = $multiarray[$firstindex]; 

   return $sortedarray; 

  } 

}

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
php array_pop()数组函数将数组最后一个单元弹出(出栈)
Jul 12 PHP
pdo中使用参数化查询sql
Aug 11 PHP
PHP5.3的垃圾回收机制(动态存储分配方案)深入理解
Dec 10 PHP
php获取网页请求状态程序示例
Jun 17 PHP
分享一个Laravel好用的Cache宏
Mar 02 PHP
CentOS 安装 PHP5.5+Redis+XDebug+Nginx+MySQL全纪录
Mar 25 PHP
php使用socket post数据到其它web服务器的方法
Jun 02 PHP
php数组函数array_key_exists()小结
Dec 10 PHP
PHP访问数据库集群的方法小结
Mar 14 PHP
PHP模板引擎Smarty自定义变量调解器用法
Apr 11 PHP
ThinkPHP整合datatables实现服务端分页的示例代码
Feb 10 PHP
Laravel (Lumen) 解决JWT-Auth刷新token的问题
Oct 24 PHP
php获取用户浏览器版本的方法
Jan 03 #PHP
php堆排序实现原理与应用方法
Jan 03 #PHP
php购物车实现方法
Jan 03 #PHP
PHP实现格式化文件数据大小显示的方法
Jan 03 #PHP
php自定义加密与解密程序实例
Dec 31 #PHP
推荐一本PHP程序猿都应该拜读的书
Dec 31 #PHP
推荐10个提供免费PHP脚本下载的网站
Dec 31 #PHP
You might like
在php中取得image按钮传递的name值
2006/10/09 PHP
PHP个人网站架设连环讲(三)
2006/10/09 PHP
php5 pdo新改动加载注意事项
2008/09/11 PHP
PHP SQLite类
2009/05/07 PHP
php设计模式 Builder(建造者模式)
2011/06/26 PHP
php中拷贝构造函数、赋值运算符重载
2012/07/25 PHP
hadoop中一些常用的命令介绍
2013/06/19 PHP
php+mysql实现无限分类实例详解
2015/01/15 PHP
php实现网页缓存的工具类分享
2015/07/14 PHP
PHP实现根据数组的值进行分组的方法
2017/04/20 PHP
Javascript实现的分页函数
2006/12/22 Javascript
Jquery注册事件实现方法
2015/05/18 Javascript
js面向对象的写法
2016/02/19 Javascript
easyui validatebox验证
2016/04/29 Javascript
BootStrap 轮播插件(carousel)支持左右手势滑动的方法(三种)
2016/07/07 Javascript
vue loadmore组件上拉加载更多功能示例代码
2017/07/19 Javascript
ES6 javascript中class静态方法、属性与实例属性用法示例
2017/10/30 Javascript
angular中ui calendar的一些使用心得(推荐)
2017/11/03 Javascript
微信小程序实现默认第一个选中变色效果
2018/07/17 Javascript
Element-ui DatePicker显示周数的方法示例
2019/07/19 Javascript
Ant Design的Table组件去除
2020/10/24 Javascript
javascript全局自定义鼠标右键菜单
2020/12/08 Javascript
[01:38]完美世界高校联赛决赛花絮
2018/12/02 DOTA
python解析含有重复key的json方法
2019/01/22 Python
python实现简单颜色识别程序
2020/02/19 Python
python中常见错误及解决方法
2020/06/21 Python
5分钟让你掌握css3阴影、倒影、渐变小技巧(小编推荐)
2016/08/15 HTML / CSS
SHEIN香港:价格实惠的女性时尚服装
2018/08/14 全球购物
C语言编程题
2015/03/09 面试题
合伙经营协议书
2014/04/18 职场文书
世界读书日的活动方案
2014/08/20 职场文书
工作业绩不及格检讨书
2014/10/28 职场文书
小学生优秀评语
2014/12/29 职场文书
人力资源部岗位职责
2015/02/11 职场文书
手把手教你实现PyTorch的MNIST数据集
2021/06/28 Python
Go语言安装并操作redis的go-redis库
2022/04/14 Golang