On this page
Caution
The documentation you are viewing is for an older version of this component.
Switch to the latest (v3) version.
File Validators
Extension
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.
Supported Options
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 or not extensions should match case sensitively; defaults tofalse
(case-insensitive).allowNonExistentFile
: (Since 2.13.0) Boolean indicating whether or not to allow validating a filename for a non-existent file. Defaults tofalse
(will not validate non-existent files).
Usage Examples
use Laminas\Validator\File\Extension;
// Allow files with 'php' or 'exe' extensions
$validator = new Extension('php,exe');
// ...or with array notation
$validator = new Extension(['php', 'exe']);
// Test with case-sensitivity on
$validator = new Extension(['php', 'exe'], true);
// Using an options array:
$validator = new Extension([
'extension' => ['php', 'exe'],
'case' => true,
]);
// Perform validation
if ($validator->isValid('./myfile.php')) {
// file is valid
}
Public Methods
addExtension
addExtension(string|array $options) : void
Add one or more extensions as a comma-separated list, or as an array.