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
Version | Description |
|---|---|
5.3.1 | Added 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::next — Move to the next file
- FilesystemIterator::rewind — Rewinds back to the beginning
- FilesystemIterator::setFlags — Sets handling flags
← EmptyIterator::valid
FilesystemIterator::__construct →
© 1997–2017 The PHP Documentation GroupLicensed under the Creative Commons Attribution License v3.0 or later.
本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com

