php遍历CSV类实例

yipeiwu_com6年前PHP代码库

本文实例讲述了php遍历CSV类。分享给大家供大家参考。具体如下:

<?php
class CSVIterator implements Iterator
{ 
  const ROW_SIZE = 4096;
  private $filePointer;
  private $currentElement;
  private $rowCounter;
  private $delimiter;
  public function __construct( $file, $delimiter = ',' )
  {
    $this->filePointer = fopen( $file, 'r' );
    $this->delimiter  = $delimiter;
  }
  public function rewind()
  {
    $this->rowCounter = 0;
    rewind( $this->filePointer );
  }
  public function current()
  {
    $this->currentElement = fgetcsv($this->filePointer,self::ROW_SIZE,$this->delimiter);
    $this->rowCounter++;
    return $this->currentElement;
  }
  public function key()
  {
    return $this->rowCounter;
  }
  public function next()
  {
    return !feof( $this->filePointer );
  }
  public function valid()
  {
    if( !$this->next() )
    {
      fclose( $this->filePointer );
      return FALSE;
    }
    return TRUE;
  }
} // end class
?>

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

相关文章

Yii2——使用数据库操作汇总(增删查改、事务)

本文介绍了 Yii2——使用数据库操作汇总(增删查改、事务),具体如下: 对象操作 查询 //1.简单查询 $admin=Admin::model()->findAll...

php微信高级接口群发 多客服

本文实例为大家分享了php微信高级接口群发、多客服源码,供大家参考,具体内容如下 /** * 微信接口调用 * 依赖 * 全局变量 * global $uid 公众号用户id...

PHP自动重命名文件实现方法

本文实例讲述了PHP自动重命名文件实现方法。分享给大家供大家参考。具体方法分析如下: PHP重命名文件名我们在实际开发过程中经常会使用到,比如用户上传文件或是一些缓存文件自动生成的功能我...

示例详解Laravel的注册重构

1. 首先确定用户注册的路由 我们在安装好laravel的时候默认生成的注册是用邮箱进行注册的,并且有些选项不需要,有些还需要加一些表单选项 我们注册的话,并不是可以随便注册的,只有一...

php 各种应用乱码问题的解决方法

1) 使用 标签设置页面编码 这个标签的作用是声明客户端的浏览器用什么字符集编码显示该页面,xxx 可以为 GB2312、GBK、UTF-8(和 MySQL 不同,MySQL 是 UTF...