News

Laravel Zip Content Validator

Published
Laravel Zip Content Validator image

Laravel Zip Content Validator by Orkhan Ahmadov is a custom validation rule for checking the contents of an uploaded ZIP file:

use Orkhanahmadov\ZipValidator\Rules\ZipContent;
 
public function rules()
{
return [
'file' => [
'required',
'file',
'mimes:zip',
new ZipContent('thumb.jpg', 'assets/logo.png')
],
];
}

In addition to checking the existence of file paths, you can also validate the maximum size of a file. The unit of the value is bytes: 100000 equals 100KB:

new ZipContent(['thumb.jpg' => 100000, 'logo.png']);

You can also use an “or” style of validation. Here’s an example of “or” validation in tandem with maximum size:

new ZipContent(['thumb.jpg|thumb.png' => 100000]);

Finally, you can reject empty files with false as a second argument:

new ZipContent(['thumb.jpg', 'style.css'], false);

You can learn more about this package, get full installation instructions, and view the source code on GitHub: laravel-zip-validator.

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Filed in

Sponsored

serpapi logo
SerpApi

The Web Search API for Your LLM and AI Applications

Visit SerpApi

The latest

View all →
CPX: The Composer Package Executor for PHP image

CPX: The Composer Package Executor for PHP

Read article
Laravel AI SDK Adds Human-in-the-Loop Tool Approval image

Laravel AI SDK Adds Human-in-the-Loop Tool Approval

Read article
Pest 5 Released With Test Impact Analysis, Agent Verification, and Evals image

Pest 5 Released With Test Impact Analysis, Agent Verification, and Evals

Read article
Queue-SQL: Run Mass Deletes and Updates Across Parallel Queue Jobs image

Queue-SQL: Run Mass Deletes and Updates Across Parallel Queue Jobs

Read article
Blade Formatting in Laravel Pint image

Blade Formatting in Laravel Pint

Read article
Inertia DevTools Is Now on the Chrome Web Store image

Inertia DevTools Is Now on the Chrome Web Store

Read article