SplFileObject 类

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

简介

SplFileObject 类为文件提供了一个面向对象接口。

类摘要

class SplFileObject extends SplFileInfo implements RecursiveIterator, SeekableIterator {
/* 常量 */
public const int DROP_NEW_LINE;
public const int READ_AHEAD;
public const int SKIP_EMPTY;
public const int READ_CSV;
/* 方法 */
public function __construct(
    string $filename,
    string $mode = "r",
    bool $useIncludePath = false,
    ?resource $context = null
)
public function current(): string|array|false
public function eof(): bool
public function fflush(): bool
public function fgetc(): string|false
public function fgetcsv(string $separator = ",", string $enclosure = "\"", string $escape = "\\"): array|false
public function fgets(): string
public function fgetss(string $allowable_tags = ?): string
public function flock(int $operation, int &$wouldBlock = null): bool
public function fpassthru(): int
public function fputcsv(
    array $fields,
    string $separator = ",",
    string $enclosure = "\"",
    string $escape = "\\",
    string $eol = "\n"
): int|false
public function fread(int $length): string|false
public function fscanf(string $format, mixed &...$vars): array|int|null
public function fseek(int $offset, int $whence = SEEK_SET): int
public function fstat(): array
public function ftell(): int|false
public function ftruncate(int $size): bool
public function fwrite(string $data, ?int $length = null): int|false
public function getChildren(): null
public function getCsvControl(): array
public function getFlags(): int
public function getMaxLineLen(): int
public function hasChildren(): false
public function key(): int
public function next(): void
public function rewind(): void
public function seek(int $line): void
public function setCsvControl(string $separator = ",", string $enclosure = "\"", string $escape = "\\"): void
public function setFlags(int $flags): void
public function setMaxLineLen(int $maxLength): void
public function __toString(): string
public function valid(): bool
/* 继承的方法 */
public function SplFileInfo::getATime(): int|false
public function SplFileInfo::getBasename(string $suffix = ""): string
public function SplFileInfo::getCTime(): int|false
public function SplFileInfo::getFilename(): string
public function SplFileInfo::getGroup(): int|false
public function SplFileInfo::getInode(): int|false
public function SplFileInfo::getMTime(): int|false
public function SplFileInfo::getOwner(): int|false
public function SplFileInfo::getPath(): string
public function SplFileInfo::getPathname(): string
public function SplFileInfo::getPerms(): int|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
}

预定义常量

SplFileObject::DROP_NEW_LINE

删除行尾的换行符。

SplFileObject::READ_AHEAD

使用 rewind 或 next 方法时,从文件中读取一行数据。

SplFileObject::SKIP_EMPTY

跳过文件中的空白行。这需要启用 READ_AHEAD 标志,以达到预期的效果。

SplFileObject::READ_CSV

以 CSV 行的形式读取。

目录