danbettles/temper

Tame your temp-files. Temper offers a smoother approach to working with temp-files in PHP.

v3.0.0 2024-08-10 09:53 UTC

This package is auto-updated.

Last update: 2025-04-10 11:31:13 UTC


README

Temper offers a smoother approach to working with temp-files in PHP.

Usage

There are two ways to use it:

  • 'Consume' a temp-file: create, use, and remove a temp-file in a single operation
  • Create and remove temp-files in separate steps

Consume a Temp-File

$temper = new Temper('/path/to/tmp/dir');

$temper->consumeFile(function (SplFileInfo $tempFileinfo): void {
    // Do something with temp-file
});

// Temp-file gone

$temper->consumeFile(function (SplFileInfo $tempFileinfo): void {
    // Do something with `.jpg` temp-file
}, 'jpg');

// Temp-file gone

Create and Remove In Separate Steps

Note

Since, at the end of its life, a Temper instance will automatically clean-up any remaining temp-files it knows about, you may never need to call cleanUp() by hand

$temper = new Temper('/path/to/tmp/dir');

$tempFileWithoutExtension = $temper->createFile();

$tempImageFile = $temper->createFile('jpg');

// Removes *all* remaining temp-files created by the Temper instance
$temper->cleanUp();

Installation

Install using Composer:

composer require danbettles/temper