CascadiaPHP 2024

SplTempFileObject::__construct

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

SplTempFileObject::__constructСоздаёт новый объект временного файла

Описание

public SplTempFileObject::__construct(int $maxMemory = 2 * 1024 * 1024)

Метод создаёт новый объект, который представляет временный файл.

Список параметров

maxMemory

Максимальный объем памяти для временного файла в байтах; размер по умолчанию составляет 2 МБ. Метод переместит файл в системный каталог временных файлов, если размер временного файла превысит это значение.

Метод будет использовать только память, если значение параметра maxMemory отрицательное. Метод не будет использовать память, если значение параметра maxMemory равно 0.

Ошибки

Метод выбрасывает исключение RuntimeException, если возникла ошибка.

Примеры

Пример #1 Пример использования метода SplTempFileObject()

Этот пример создаёт в памяти временный файл, в который можно записать данные и прочитать их.

<?php

$temp
= new SplTempFileObject();
$temp->fwrite("Первая строка\n");
$temp->fwrite("А это вторая.\n");
echo
"Во временный файл записано " . $temp->ftell() . " байтов.\n\n";

// Перемотка в начало и чтение того, что было записано
$temp->rewind();
foreach (
$temp as $line) {
echo
$line;
}

?>

Вывод приведённого примера будет похож на:

Во временный файл записано 28 байтов.

Первая строка
А это вторая.

Смотрите также

add a note

User Contributed Notes 1 note

up
18
larry dot laski at gmail dot com
9 years ago
Noting that when the tmp file exceeds memory limitations and is written to the system temp directory, it is deleted upon completion of the script it was initially created in. At least that is what I have seen and wanted to document for others since it wasn't clear.
To Top