The FilesystemIterator class

(PHP 5 >= 5.3.0, PHP 7)

Introduction

The Filesystem iterator

Class synopsis

FilesystemIterator extends DirectoryIterator implements SeekableIterator {
/* Constants */
const integer CURRENT_AS_PATHNAME = 32 ;
const integer CURRENT_AS_FILEINFO = 0 ;
const integer CURRENT_AS_SELF = 16 ;
const integer CURRENT_MODE_MASK = 240 ;
const integer KEY_AS_PATHNAME = 0 ;
const integer KEY_AS_FILENAME = 256 ;
const integer FOLLOW_SYMLINKS = 512 ;
const integer KEY_MODE_MASK = 3840 ;
const integer NEW_CURRENT_AND_KEY = 256 ;
const integer SKIP_DOTS = 4096 ;
const integer UNIX_PATHS = 8192 ;
/* Methods */
public __construct ( string $path [, int $flags = FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO | FilesystemIterator::SKIP_DOTS ] )
public current ( void ) : mixed
public getFlags ( void ) : int
public key ( void ) : string
public next ( void ) : void
public rewind ( void ) : void
public setFlags ([ int $flags ] ) : void
/* Inherited methods */
public DirectoryIterator::getATime ( void ) : int
public DirectoryIterator::getBasename ([ string $suffix ] ) : string
public DirectoryIterator::getCTime ( void ) : int
public DirectoryIterator::getExtension ( void ) : string
public DirectoryIterator::getFilename ( void ) : string
public DirectoryIterator::getGroup ( void ) : int
public DirectoryIterator::getInode ( void ) : int
public DirectoryIterator::getMTime ( void ) : int
public DirectoryIterator::getOwner ( void ) : int
public DirectoryIterator::getPath ( void ) : string
public DirectoryIterator::getPathname ( void ) : string
public DirectoryIterator::getPerms ( void ) : int
public DirectoryIterator::getSize ( void ) : int
public DirectoryIterator::getType ( void ) : string
public DirectoryIterator::isDir ( void ) : bool
public DirectoryIterator::isDot ( void ) : bool
public DirectoryIterator::isExecutable ( void ) : bool
public DirectoryIterator::isFile ( void ) : bool
public DirectoryIterator::isLink ( void ) : bool
public DirectoryIterator::isReadable ( void ) : bool
public DirectoryIterator::isWritable ( void ) : bool
public DirectoryIterator::key ( void ) : string
public DirectoryIterator::next ( void ) : void
public DirectoryIterator::rewind ( void ) : void
public DirectoryIterator::seek ( int $position ) : void
public DirectoryIterator::__toString ( void ) : string
public DirectoryIterator::valid ( void ) : bool
}

Predefined Constants

FilesystemIterator::CURRENT_AS_PATHNAME

Makes FilesystemIterator::current() return the pathname.

FilesystemIterator::CURRENT_AS_FILEINFO

Makes FilesystemIterator::current() return an SplFileInfo instance.

FilesystemIterator::CURRENT_AS_SELF

Makes FilesystemIterator::current() return $this (the FilesystemIterator).

FilesystemIterator::CURRENT_MODE_MASK

Masks FilesystemIterator::current()

FilesystemIterator::KEY_AS_PATHNAME

Makes FilesystemIterator::key() return the pathname.

FilesystemIterator::KEY_AS_FILENAME

Makes FilesystemIterator::key() return the filename.

Makes RecursiveDirectoryIterator::hasChildren() follow symlinks.

FilesystemIterator::KEY_MODE_MASK

Masks FilesystemIterator::key()

FilesystemIterator::NEW_CURRENT_AND_KEY

Same as FilesystemIterator::KEY_AS_FILENAME | FilesystemIterator::CURRENT_AS_FILEINFO.

FilesystemIterator::SKIP_DOTS

Skips dot files (. and ..).

FilesystemIterator::UNIX_PATHS

Makes paths use Unix-style forward slash irrespective of system default. Note that the path that is passed to the constructor is not modified.

Changelog

Version Description
5.3.1 Added FilesystemIterator::FOLLOW_SYMLINKS

Table of Contents