laminas/laminas-validator
Validation component for PHP and Laminas applications. Provides a wide range of ready-to-use validators (strings, numbers, dates, files, and more), consistent error messages, and an extensible API to create custom validators and input filtering rules.
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?