portavice/laravel-filesanitizer

Laravel integration for sytxlabs/filesanitizer

Maintainers

Package info

github.com/portavice/laravel-filesanitizer

pkg:composer/portavice/laravel-filesanitizer

Statistics

Installs: 12

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 1

1.0.1 2026-03-16 10:33 UTC

This package is auto-updated.

Last update: 2026-03-16 12:31:27 UTC


README

MIT Licensed Check code style Tests Latest Version on Packagist Total Downloads

Laravel integration for sytxlabs/filesanitizer.

The upstream package is installed as sytxlabs/filesanitizer and uses the class SytxLabs\FileSanitizer\FileSanitizer.

Installation

composer require portavice/laravel-filesanitizer
php artisan vendor:publish --tag=filesanitizer-config

Usage

use Portavice\LaravelFileSanitizer\Facades\FileSanitizer;

$result = FileSanitizer::process(storage_path('app/uploads/file.pdf'), null, true);

if (! FileSanitizer::safe($result)) {
    foreach (FileSanitizer::issues($result) as $issue) {
        echo is_object($issue) ? $issue->code : ($issue['code'] ?? 'unsafe');
        echo PHP_EOL;
    }
}

Validation rule

use Portavice\LaravelFileSanitizer\Rules\SafeFile;

$request->validate([
    'upload' => ['required', 'file', new SafeFile()],
]);

Or as a validator string rule:

$request->validate([
    'upload' => ['required', 'file', 'safe_file'],
]);

UploadedFile macro

$result = $request->file('upload')->sanitize();

Config

return [
    'sanitize_always' => env('FILESANITIZER_SANITIZE_ALWAYS', false),
];