# FilesystemIterator クラス

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

## はじめに

Filesystem イテレータです。

## クラス概要

class FilesystemIterator extends DirectoryIterator {
/* 定数 */
public const int CURRENT_MODE_MASK;
public const int CURRENT_AS_PATHNAME;
public const int CURRENT_AS_FILEINFO;
public const int CURRENT_AS_SELF;
public const int KEY_MODE_MASK;
public const int KEY_AS_PATHNAME;
public const int FOLLOW_SYMLINKS;
public const int KEY_AS_FILENAME;
public const int NEW_CURRENT_AND_KEY;
public const int OTHER_MODE_MASK;
public const int SKIP_DOTS;
public const int UNIX_PATHS;
/* メソッド */
public function __construct(string `$directory`, int `$flags` = FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO | FilesystemIterator::SKIP_DOTS)
public function current(): string|SplFileInfo|FilesystemIterator
public function getFlags(): int
public function key(): string
public function next(): void
public function rewind(): void
public function setFlags(int `$flags`): void
/* 継承したメソッド */
public function DirectoryIterator::current(): mixed
public function DirectoryIterator::getBasename(string `$suffix` = ""): string
public function DirectoryIterator::getExtension(): string
public function DirectoryIterator::getFilename(): string
public function DirectoryIterator::isDot(): bool
public function DirectoryIterator::key(): mixed
public function DirectoryIterator::next(): void
public function DirectoryIterator::rewind(): void
public function DirectoryIterator::seek(int `$offset`): void
public function DirectoryIterator::__toString(): string
public function DirectoryIterator::valid(): bool
public function SplFileInfo::getATime(): int|false
public function SplFileInfo::getBasename(string `$suffix` = ""): string
public function SplFileInfo::getCTime(): int|false
public function SplFileInfo::getExtension(): string
public function SplFileInfo::getFileInfo(?string `$class` = `null`): SplFileInfo
public function SplFileInfo::getFilename(): string
public function SplFileInfo::getGroup(): int|false
public function SplFileInfo::getInode(): int|false
public function SplFileInfo::getLinkTarget(): string|false
public function SplFileInfo::getMTime(): int|false
public function SplFileInfo::getOwner(): int|false
public function SplFileInfo::getPath(): string
public function SplFileInfo::getPathInfo(?string `$class` = `null`): ?SplFileInfo
public function SplFileInfo::getPathname(): string
public function SplFileInfo::getPerms(): int|false
public function SplFileInfo::getRealPath(): string|false
public function SplFileInfo::getSize(): int|false
public function SplFileInfo::getType(): string|false
public function SplFileInfo::isDir(): bool
public function SplFileInfo::isExecutable(): bool
public function SplFileInfo::isFile(): bool
public function SplFileInfo::isLink(): bool
public function SplFileInfo::isReadable(): bool
public function SplFileInfo::isWritable(): bool
public function SplFileInfo::openFile(string `$mode` = "r", bool `$useIncludePath` = `false`, ?resource `$context` = `null`): SplFileObject
public function SplFileInfo::setFileClass(string `$class` = `SplFileObject::class`): void
public function SplFileInfo::setInfoClass(string `$class` = `SplFileInfo::class`): void
public function SplFileInfo::__toString(): string
}

## 定義済み定数

`FilesystemIterator::CURRENT_AS_PATHNAME`

  FilesystemIterator::current() がパス名を返すようにします。

`FilesystemIterator::CURRENT_AS_FILEINFO`

  FilesystemIterator::current() が SplFileInfo のインスタンスを返すようにします。

`FilesystemIterator::CURRENT_AS_SELF`

  FilesystemIterator::current() が $this (FilesystemIterator) を返すようにします。

`FilesystemIterator::CURRENT_MODE_MASK`

  FilesystemIterator::current() をマスクします。

`FilesystemIterator::KEY_AS_PATHNAME`

  FilesystemIterator::key() がパス名を返すようにします。

`FilesystemIterator::KEY_AS_FILENAME`

  FilesystemIterator::key() がファイル名を返すようにします。

`FilesystemIterator::FOLLOW_SYMLINKS`

  RecursiveDirectoryIterator::hasChildren() がシンボリックリンクのリンク先をたどるようにします。

`FilesystemIterator::KEY_MODE_MASK`

  FilesystemIterator::key() をマスクします。

`FilesystemIterator::NEW_CURRENT_AND_KEY`

  `FilesystemIterator::KEY_AS_FILENAME | FilesystemIterator::CURRENT_AS_FILEINFO` と同じ。

`FilesystemIterator::OTHER_MODE_MASK`

  FilesystemIterator::getFlags() と FilesystemIterator::setFlags() で使うマスク

`FilesystemIterator::SKIP_DOTS`

  ドットファイル (`.` および `..`) をスキップします。

`FilesystemIterator::UNIX_PATHS`

  システムのデフォルトにかかわらず、Unix スタイルのスラッシュでパスをあらわすようにします。 コンストラクタから渡された `path` は変更されないことに注意しましょう。

## 目次

- FilesystemIterator::__construct — 新しい filesystem イテレータを作成する
- FilesystemIterator::current — 現在のファイル
- FilesystemIterator::getFlags — 処理フラグを取得する
- FilesystemIterator::key — 現在のファイルのキーを取得する
- FilesystemIterator::next — 次のファイルに移動する
- FilesystemIterator::rewind — 先頭に巻き戻す
- FilesystemIterator::setFlags — 処理フラグを設定する

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open