(PHP 5 >= 5.1.2, PHP 7, PHP 8)
SplTempFileObject::__construct — Construct a new temporary file object
Construct a new temporary file object.
maxMemory
The maximum amount of memory (in bytes, default is 2 MB) for the temporary file to use. If the temporary file exceeds this size, it will be moved to a file in the system's temp directory.
If maxMemory
is negative, only memory
will be used. If maxMemory
is zero,
no memory will be used.
Throws a RuntimeException if an error occurs.
Example #1 SplTempFileObject() example
This example writes a temporary file in memory which can be written to and read from.
<?php
$temp = new SplTempFileObject();
$temp->fwrite("This is the first line\n");
$temp->fwrite("And this is the second.\n");
echo "Written " . $temp->ftell() . " bytes to temporary file.\n\n";
// Rewind and read what was written
$temp->rewind();
foreach ($temp as $line) {
echo $line;
}
?>
The above example will output something similar to:
Written 47 bytes to temporary file. This is the first line And this is the second.
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.