laminas/laminas-validator
Laminas Validator provides flexible, reusable validation rules for PHP applications. Includes built-in validators, input filtering/validation chains, and tools for validating common data types like emails, URLs, numbers, strings, and more.
Laminas\Validator\File\Extension checks the extension of files. It will assert
true when a given file matches any of the defined extensions.
This validator is inversely related to the ExcludeExtension validator.
The following set of options are supported:
extension: Array of extensions, or comma-delimited string of extensions,
against which to test.case: Boolean indicating whether extensions should match case
sensitively; defaults to false (case-insensitive).allowNonExistentFile: Boolean indicating whether
to allow validating a filename for a non-existent file. Defaults to false
(will not validate non-existent files).use Laminas\Validator\File\Extension;
$validator = new Extension([
'extension' => ['php', 'exe'],
]);
$validator->isValid('./file.php'); // true
$validator->isValid('./file.PHP'); // true
$validator = new Extension([
'extension' => 'php,exe',
'case' => true,
]);
$validator->isValid('./file.php'); // true
$validator->isValid('./file.PHP'); // false
use Laminas\Validator\File\Extension;
$validator = new Extension([
'extension' => 'gif,jpg,png',
'allowNonExistentFile' => true,
]);
$validator->isValid('picture.jpg'); // true
$validator->isValid('something-else.txt'); // false
This validator accepts and validates 3 types of argument:
$_FILES superglobalUploadedFileInterface instanceHow can I help you explore Laravel packages today?