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程序设计有所帮助。

相关文章

PHP中IP地址与整型数字互相转换详解

IP转换成整型存储是数据库优化一大趋势,不少人目前存储IP时还在使用字符串类型存储,字符串索引比整型索引消耗资源很多,特别是表中数据量大的时候,以及求查询某一个ip段的数据,今天说的ip...

PHP线程的内存回收问题

当一个PHP线程结束时,当前占用的所有内存空间都会被销毁。那么如果这个线程不结束,怎么回收内存呢? refcount:引用技术器,可以理解为指向该个容器的指针个数吧。 is_ref:是否...

php5.3后静态绑定用法详解

php5.3后静态绑定用法详解

本文实例讲述了php5.3后静态绑定用法。分享给大家供大家参考,具体如下: 手册原文: 自 PHP 5.3.0 起,PHP 增加了一个叫做后期静态绑定的功能,用于在继承范围内引用静态调用...

php内嵌函数用法实例

本文实例讲述了php内嵌函数用法。分享给大家供大家参考。具体分析如下: php中可以在函数内部内嵌一个函数,调用范围仅限于函数本身 <?php function msg...

PHP实现多级分类生成树的方法示例

本文实例讲述了PHP实现多级分类生成树的方法。分享给大家供大家参考,具体如下: 条件,数据库里分类是按id,fid(父ID)实现多级分类的! 使用方法: $sql ="XXXXXX...