SplFileInfo::__toString
SplFileObject::__construct
File Handling
PHP Manual

# The SplFileObject class

(PHP 5 >= 5.1.0)

## Introduction

The SplFileObject class offers an object oriented interface for a file.

## Class synopsis

SplFileObject extends SplFileInfo implements RecursiveIterator , SeekableIterator {
/* Constants */
const integer DROP_NEW_LINE = 1 ;
const integer READ_AHEAD = 2 ;
const integer SKIP_EMPTY = 4 ;
const integer READ_CSV = 8 ;
/* Methods */
public string|array current ( void )
public bool eof ( void )
public bool fflush ( void )
public string fgetc ( void )
public array fgetcsv ([ string `$delimiter` = "," [, string `$enclosure` = "\"" [, string `$escape` = "\\" ]]] )
public string fgets ( void )
public string fgetss ([ string `$allowable_tags` ] )
public bool flock ( int `$operation` [, int `&$wouldblock` ] )
public int fpassthru ( void )
public int fputcsv ( array `$fields` [, string `$delimiter` = "," [, string `$enclosure` = '"' [, string `$escape` = "\" ]]] )
public string fread ( int `$length` )
public mixed fscanf ( string `$format` [, mixed `&$...` ] )
public int fseek ( int `$offset` [, int `$whence` = SEEK_SET ] )
public array fstat ( void )
public int ftell ( void )
public bool ftruncate ( int `$size` )
public int fwrite ( string `$str` [, int `$length` ] )
public void getChildren ( void )
public array getCsvControl ( void )
public int getFlags ( void )
public int getMaxLineLen ( void )
public bool hasChildren ( void )
public int key ( void )
public void next ( void )
public void rewind ( void )
public void seek ( int `$line_pos` )
public void setCsvControl ([ string `$delimiter` = "," [, string `$enclosure` = "\"" [, string `$escape` = "\\" ]]] )
public void setFlags ( int `$flags` )
public void setMaxLineLen ( int `$max_len` )
public void __toString ( void )
public bool valid ( void )
/* Inherited methods */
public SplFileInfo::__construct ( string `$file_name` )
public int SplFileInfo::getATime ( void )
public string SplFileInfo::getBasename ([ string `$suffix` ] )
public int SplFileInfo::getCTime ( void )
public string SplFileInfo::getExtension ( void )
public SplFileInfo SplFileInfo::getFileInfo ([ string `$class_name` ] )
public string SplFileInfo::getFilename ( void )
public int SplFileInfo::getGroup ( void )
public int SplFileInfo::getInode ( void )
public string SplFileInfo::getLinkTarget ( void )
public int SplFileInfo::getMTime ( void )
public int SplFileInfo::getOwner ( void )
public string SplFileInfo::getPath ( void )
public SplFileInfo SplFileInfo::getPathInfo ([ string `$class_name` ] )
public string SplFileInfo::getPathname ( void )
public int SplFileInfo::getPerms ( void )
public string SplFileInfo::getRealPath ( void )
public int SplFileInfo::getSize ( void )
public string SplFileInfo::getType ( void )
public bool SplFileInfo::isDir ( void )
public bool SplFileInfo::isExecutable ( void )
public bool SplFileInfo::isFile ( void )
public bool SplFileInfo::isLink ( void )
public bool SplFileInfo::isReadable ( void )
public bool SplFileInfo::isWritable ( void )
public SplFileObject SplFileInfo::openFile ([ string `$open_mode` = "r" [, bool `$use_include_path` = false [, resource `$context` = `NULL` ]]] )
public void SplFileInfo::setFileClass ([ string `$class_name` = "SplFileObject" ] )
public void SplFileInfo::setInfoClass ([ string `$class_name` = "SplFileInfo" ] )
public void SplFileInfo::__toString ( void )
}

## Predefined Constants

`SplFileObject::DROP_NEW_LINE`

  Drop newlines at the end of a line.

`SplFileObject::READ_AHEAD`

  Read on rewind/next.

`SplFileObject::SKIP_EMPTY`

  Skips empty lines in the file. This requires the `READ_AHEAD` flag be enabled, to work as expected.

`SplFileObject::READ_CSV`

  Read lines as CSV rows.

## Changelog

Version | Description
--- | ---
5.3.9 | `SplFileObject::SKIP_EMPTY` value changed to 4. Previously, value was 6.

## Table of Contents

- SplFileObject::__construct — Construct a new file object.
- SplFileObject::current — Retrieve current line of file
- SplFileObject::eof — Reached end of file
- SplFileObject::fflush — Flushes the output to the file
- SplFileObject::fgetc — Gets character from file
- SplFileObject::fgetcsv — Gets line from file and parse as CSV fields
- SplFileObject::fgets — Gets line from file
- SplFileObject::fgetss — Gets line from file and strip HTML tags
- SplFileObject::flock — Portable file locking
- SplFileObject::fpassthru — Output all remaining data on a file pointer
- SplFileObject::fputcsv — Write a field array as a CSV line
- SplFileObject::fread — Read from file
- SplFileObject::fscanf — Parses input from file according to a format
- SplFileObject::fseek — Seek to a position
- SplFileObject::fstat — Gets information about the file
- SplFileObject::ftell — Return current file position
- SplFileObject::ftruncate — Truncates the file to a given length
- SplFileObject::fwrite — Write to file
- SplFileObject::getChildren — No purpose
- SplFileObject::getCsvControl — Get the delimiter and enclosure character for CSV
- SplFileObject::getCurrentLine — Alias of SplFileObject::fgets
- SplFileObject::getFlags — Gets flags for the SplFileObject
- SplFileObject::getMaxLineLen — Get maximum line length
- SplFileObject::hasChildren — SplFileObject does not have children
- SplFileObject::key — Get line number
- SplFileObject::next — Read next line
- SplFileObject::rewind — Rewind the file to the first line
- SplFileObject::seek — Seek to specified line
- SplFileObject::setCsvControl — Set the delimiter and enclosure character for CSV
- SplFileObject::setFlags — Sets flags for the SplFileObject
- SplFileObject::setMaxLineLen — Set maximum line length
- SplFileObject::__toString — Alias of SplFileObject::current
- SplFileObject::valid — Not at EOF

SplFileInfo::__toString
SplFileObject::__construct
File Handling
PHP Manual