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 相关文章推荐
拼音码表的生成
Oct 09 PHP
提升PHP执行速度全攻略(下)
Oct 09 PHP
一个严格的PHP Session会话超时时间设置方法
Jun 10 PHP
采用thinkphp自带方法生成静态html文件详解
Jun 13 PHP
用PHP代替JS玩转DOM的思路及示例代码
Jun 15 PHP
安装ImageMagick出现error while loading shared libraries的解决方法
Sep 23 PHP
PHP使用pear自带的mail类库发邮件的方法
Jul 08 PHP
php ajax异步读取rss文档数据
Mar 29 PHP
php版微信公众平台入门教程之开发者认证的方法
Sep 26 PHP
基于php流程控制语句和循环控制语句(讲解)
Oct 23 PHP
php实现姓名根据首字母排序的类与方法(实例代码)
May 16 PHP
PHP扩展mcrypt实现的AES加密功能示例
Jan 29 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如何防止XSS攻击与XSS攻击原理的讲解
2019/03/22 PHP
学习YUI.Ext 第二天
2007/03/10 Javascript
js对象的比较
2011/02/26 Javascript
javascript实现div的显示和隐藏的小例子
2013/06/25 Javascript
用javascript删除当前行,添加行(示例代码)
2013/11/25 Javascript
判断及设置浏览器全屏模式
2014/04/20 Javascript
jquery实现简单的轮换出现效果实例
2015/07/23 Javascript
JS操作XML实例总结(加载与解析XML文件、字符串)
2015/12/08 Javascript
JavaScript中iframe实现局部刷新的几种方法汇总
2016/01/06 Javascript
Bootstrap CSS布局之按钮
2016/12/17 Javascript
jQuery实现文件编码成base64并通过AJAX上传的方法
2018/04/12 jQuery
JS实现的JSON序列化操作简单示例
2018/07/02 Javascript
使用 js 简单的实现 bind、call 、aplly代码实例
2019/09/07 Javascript
11个Javascript小技巧帮你提升代码质量(小结)
2020/12/28 Javascript
Nest.js 授权验证的方法示例
2021/02/22 Javascript
[10:53]2018DOTA2国际邀请赛寻真——EG
2018/08/11 DOTA
基于Django模板中的数字自增(详解)
2017/09/05 Python
win10下tensorflow和matplotlib安装教程
2018/09/19 Python
python3射线法判断点是否在多边形内
2019/06/28 Python
python输出数组中指定元素的所有索引示例
2019/12/06 Python
Python3将ipa包中的文件按大小排序
2020/04/17 Python
python矩阵运算,转置,逆运算,共轭矩阵实例
2020/05/11 Python
Python接收手机短信的代码整理
2020/08/02 Python
python开根号实例讲解
2020/08/30 Python
中国跨境电子商务网站:NewFrog
2018/03/10 全球购物
捷克厨房用品购物网站:Tescoma
2018/07/13 全球购物
Lulu Guinness露露·吉尼斯官网:红唇包
2019/02/03 全球购物
上海某公司.net方向笔试题
2014/09/14 面试题
企业员工培训感言
2014/02/26 职场文书
法人授权委托书格式
2014/04/08 职场文书
软件售后服务方案
2014/05/29 职场文书
世界环境日活动总结
2015/02/11 职场文书
学校会议通知范文
2015/04/15 职场文书
2016大学生就业指导课心得体会
2016/01/15 职场文书
2016年党员干部公开承诺书
2016/03/24 职场文书
HTML5中的DOCUMENT.VISIBILITYSTATE属性详解
2023/05/07 HTML / CSS