PHP
SPL/Iterators

FilesystemIterator (class)

The FilesystemIterator class

Introduction

(PHP 5 >= 5.3.0, PHP 7)

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 mixed current ( void )

public int getFlags ( void )

public string key ( void )

public void next ( void )

public void rewind ( void )

public void setFlags ([ int $flags ] )

/* Inherited methods */

public DirectoryIterator DirectoryIterator::current ( void )

public int DirectoryIterator::getATime ( void )

public string DirectoryIterator::getBasename ([ string $suffix ] )

public int DirectoryIterator::getCTime ( void )

public string DirectoryIterator::getExtension ( void )

public string DirectoryIterator::getFilename ( void )

public int DirectoryIterator::getGroup ( void )

public int DirectoryIterator::getInode ( void )

public int DirectoryIterator::getMTime ( void )

public int DirectoryIterator::getOwner ( void )

public string DirectoryIterator::getPath ( void )

public string DirectoryIterator::getPathname ( void )

public int DirectoryIterator::getPerms ( void )

public int DirectoryIterator::getSize ( void )

public string DirectoryIterator::getType ( void )

public bool DirectoryIterator::isDir ( void )

public bool DirectoryIterator::isDot ( void )

public bool DirectoryIterator::isExecutable ( void )

public bool DirectoryIterator::isFile ( void )

public bool DirectoryIterator::isLink ( void )

public bool DirectoryIterator::isReadable ( void )

public bool DirectoryIterator::isWritable ( void )

public string DirectoryIterator::key ( void )

public void DirectoryIterator::next ( void )

public void DirectoryIterator::rewind ( void )

public void DirectoryIterator::seek ( int $position )

public string DirectoryIterator::__toString ( void )

public bool DirectoryIterator::valid ( void )

}

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.

FilesystemIterator::FOLLOW_SYMLINKS

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

VersionDescription
5.3.1Added FilesystemIterator::FOLLOW_SYMLINKS

Table of Contents

  • FilesystemIterator::__construct — Constructs a new filesystem iterator

  • FilesystemIterator::current — The current file

  • FilesystemIterator::getFlags — Get the handling flags

  • FilesystemIterator::key — Retrieve the key for the current file

  • FilesystemIterator::rewind — Rewinds back to the beginning

  • FilesystemIterator::setFlags — Sets handling flags

← EmptyIterator::valid

FilesystemIterator::__construct →

© 1997–2017 The PHP Documentation Group

Licensed under the Creative Commons Attribution License v3.0 or later.

https://secure.php.net/manual/en/class.filesystemiterator.php