HumHub Documentation (unofficial)

ExcludeExtension extends Extension
in package
uses FileInformationTrait

Validator for the excluding file extensions

Table of Contents

Constants

FALSE_EXTENSION  = 'fileExcludeExtensionFalse'
NOT_FOUND  = 'fileExcludeExtensionNotFound'

Properties

$messageTemplates  : array<string, string>
$messageVariables  : array<string, mixed>
$options  : array<string, mixed>
$abstractOptions  : AbstractOptions|array<string, mixed>
$defaultTranslator  : TranslatorInterface
Default translation object for all validate objects
$defaultTranslatorTextDomain  : string
Default text domain to be used with translator
$messageLength  : int
Limits the maximum returned length of an error message
$messageTemplates  : array<string|int, mixed>
$messageVariables  : array<string|int, mixed>
$options  : array<string|int, mixed>
Options for this validator
$value  : mixed
The value to be validated

Methods

__construct()  : mixed
Sets validator options
__get()  : mixed
Magic function returns the value of the requested property, if and only if it is the value or a message variable.
__invoke()  : bool
Invoke as command
addExtension()  : $this
Adds the file extensions
getAllowNonExistentFile()  : bool
Returns whether or not to allow validation of non-existent files.
getCase()  : bool
Returns the case option
getDefaultTranslator()  : TranslatorInterface|null
Get default translation object for all validate objects
getDefaultTranslatorTextDomain()  : string
Get default translation text domain for all validate objects
getExtension()  : array<string|int, mixed>
Returns the set file extension
getMessageLength()  : int
Returns the maximum allowed message length
getMessages()  : array<string, string>
Returns array of validation failure messages
getMessageTemplates()  : array<string, string>
Returns the message templates from the validator
getMessageVariables()  : array<int, string>
Returns an array of the names of variables that are used in constructing validation failure messages
getOption()  : mixed
Returns an option
getOptions()  : array<string, mixed>
Returns all available options
getTranslator()  : TranslatorInterface|null
Return translation object
getTranslatorTextDomain()  : string
Return the translation text domain
hasDefaultTranslator()  : bool
Is there a default translation object set?
hasTranslator()  : bool
Does this validator have its own specific translator?
isTranslatorEnabled()  : bool
Is translation enabled?
isValid()  : bool
Returns true if and only if the file extension of $value is not included in the set extension list
isValueObscured()  : bool
Retrieve flag indicating whether or not value should be obfuscated in messages
setAllowNonExistentFile()  : $this
Sets the flag indicating whether or not to allow validation of non-existent files.
setCase()  : $this
Sets the case to use
setDefaultTranslator()  : void
Set default translation object for all validate objects
setDefaultTranslatorTextDomain()  : void
Set default translation text domain for all validate objects
setExtension()  : $this
Sets the file extensions
setMessage()  : $this
Sets the validation failure message template for a particular key
setMessageLength()  : void
Sets the maximum allowed message length
setMessages()  : $this
Sets validation failure message templates given as an array, where the array keys are the message keys, and the array values are the message template strings.
setOptions()  : $this
Sets one or multiple options
setTranslator()  : $this
Set translation object
setTranslatorEnabled()  : $this
Indicate whether or not translation should be enabled
setTranslatorTextDomain()  : $this
Set translation text domain
setValueObscured()  : $this
Set flag indicating whether or not value should be obfuscated in messages
createMessage()  : null|string
Constructs and returns a validation failure message with the given message key and value.
error()  : void
getFileInfo()  : array<string|int, mixed>
Returns array if the procedure is identified
getValue()  : mixed
Returns the validation value
setValue()  : void
Sets the value to be validated and clears the messages and errors arrays
translateMessage()  : string
Translate a validation message
getFileBasedFileInfo()  : array<string|int, mixed>
Generate file information array with base method
getLegacyFileInfo()  : array<string|int, mixed>
Generate file information array with legacy Laminas_File_Transfer API
getPsr7FileInfo()  : array<string|int, mixed>
Generate file information array with PSR-7 UploadedFileInterface
getSapiFileInfo()  : array<string|int, mixed>
Generate file information array with SAPI

Constants

FALSE_EXTENSION

public mixed FALSE_EXTENSION = 'fileExcludeExtensionFalse'
Tags
const

string Error constants

Properties

$abstractOptions

protected AbstractOptions|array<string, mixed> $abstractOptions = [ 'messages' => [], // Array of validation failure messages 'messageTemplates' => [], // Array of validation failure message templates 'messageVariables' => [], // Array of additional variables available for validation failure messages 'translator' => null, // Translation object to used -> Translator\TranslatorInterface 'translatorTextDomain' => null, // Translation text domain 'translatorEnabled' => true, // Is translation enabled? 'valueObscured' => false, ]

$defaultTranslatorTextDomain

Default text domain to be used with translator

protected static string $defaultTranslatorTextDomain = 'default'

$messageLength

Limits the maximum returned length of an error message

protected static int $messageLength = -1

$messageTemplates

protected array<string|int, mixed> $messageTemplates = [self::FALSE_EXTENSION => 'File has an incorrect extension', self::NOT_FOUND => 'File is not readable or does not exist']

Error message templates

$messageVariables

protected array<string|int, mixed> $messageVariables = ['extension' => ['options' => 'extension']]

Error message template variables

$options

Options for this validator

protected array<string|int, mixed> $options = [ 'case' => false, // Validate case sensitive 'extension' => '', // List of extensions 'allowNonExistentFile' => false, ]

Methods

__construct()

Sets validator options

public __construct([string|array<string|int, mixed>|Traversable $options = null ]) : mixed
Parameters
$options : string|array<string|int, mixed>|Traversable = null

__get()

Magic function returns the value of the requested property, if and only if it is the value or a message variable.

public __get(string $property) : mixed
Parameters
$property : string
Tags
throws
InvalidArgumentException

__invoke()

Invoke as command

public __invoke(mixed $value) : bool
Parameters
$value : mixed
Return values
bool

addExtension()

Adds the file extensions

public addExtension(string|array<string|int, mixed> $extension) : $this
Parameters
$extension : string|array<string|int, mixed>

The extensions to add for validation

Return values
$this

Provides a fluent interface

getAllowNonExistentFile()

Returns whether or not to allow validation of non-existent files.

public getAllowNonExistentFile() : bool
Return values
bool

getCase()

Returns the case option

public getCase() : bool
Return values
bool

getDefaultTranslatorTextDomain()

Get default translation text domain for all validate objects

public static getDefaultTranslatorTextDomain() : string
Return values
string

getExtension()

Returns the set file extension

public getExtension() : array<string|int, mixed>
Return values
array<string|int, mixed>

getMessageLength()

Returns the maximum allowed message length

public static getMessageLength() : int
Return values
int

getMessages()

Returns array of validation failure messages

public getMessages() : array<string, string>
Return values
array<string, string>

getMessageTemplates()

Returns the message templates from the validator

public getMessageTemplates() : array<string, string>
Return values
array<string, string>

getMessageVariables()

Returns an array of the names of variables that are used in constructing validation failure messages

public getMessageVariables() : array<int, string>
Return values
array<int, string>

getOption()

Returns an option

public getOption(string $option) : mixed
Parameters
$option : string

Option to be returned

Tags
throws
InvalidArgumentException
Return values
mixed

Returned option

getOptions()

Returns all available options

public getOptions() : array<string, mixed>
Return values
array<string, mixed>

Array with all available options

getTranslatorTextDomain()

Return the translation text domain

public getTranslatorTextDomain() : string
Return values
string

hasDefaultTranslator()

Is there a default translation object set?

public static hasDefaultTranslator() : bool
Return values
bool

hasTranslator()

Does this validator have its own specific translator?

public hasTranslator() : bool
Return values
bool

isTranslatorEnabled()

Is translation enabled?

public isTranslatorEnabled() : bool
Return values
bool

isValid()

Returns true if and only if the file extension of $value is not included in the set extension list

public isValid(string|array<string|int, mixed> $value[, array<string|int, mixed> $file = null ]) : bool
Parameters
$value : string|array<string|int, mixed>

Real file to check for extension

$file : array<string|int, mixed> = null

File data from \Laminas\File\Transfer\Transfer (optional)

Return values
bool

isValueObscured()

Retrieve flag indicating whether or not value should be obfuscated in messages

public isValueObscured() : bool
Return values
bool

setAllowNonExistentFile()

Sets the flag indicating whether or not to allow validation of non-existent files.

public setAllowNonExistentFile(bool $flag) : $this
Parameters
$flag : bool

Whether or not to allow validation of non-existent files.

Return values
$this

Provides a fluent interface

setCase()

Sets the case to use

public setCase(bool $case) : $this
Parameters
$case : bool
Return values
$this

Provides a fluent interface

setDefaultTranslatorTextDomain()

Set default translation text domain for all validate objects

public static setDefaultTranslatorTextDomain([string $textDomain = 'default' ]) : void
Parameters
$textDomain : string = 'default'

setExtension()

Sets the file extensions

public setExtension(string|array<string|int, mixed> $extension) : $this
Parameters
$extension : string|array<string|int, mixed>

The extensions to validate

Return values
$this

Provides a fluent interface

setMessage()

Sets the validation failure message template for a particular key

public setMessage(string $messageString[, string|null $messageKey = null ]) : $this
Parameters
$messageString : string
$messageKey : string|null = null

OPTIONAL

Tags
throws
InvalidArgumentException
Return values
$this

Provides a fluent interface

setMessageLength()

Sets the maximum allowed message length

public static setMessageLength([int $length = -1 ]) : void
Parameters
$length : int = -1

setMessages()

Sets validation failure message templates given as an array, where the array keys are the message keys, and the array values are the message template strings.

public setMessages(array<string, string> $messages) : $this
Parameters
$messages : array<string, string>
Return values
$this

setOptions()

Sets one or multiple options

public setOptions([array<string, mixed>|Traversable<string, mixed> $options = [] ]) : $this
Parameters
$options : array<string, mixed>|Traversable<string, mixed> = []

Options to set

Tags
throws
InvalidArgumentException

If $options is not an array or Traversable.

Return values
$this

Provides fluid interface

setTranslatorEnabled()

Indicate whether or not translation should be enabled

public setTranslatorEnabled([bool $enabled = true ]) : $this
Parameters
$enabled : bool = true
Return values
$this

setTranslatorTextDomain()

Set translation text domain

public setTranslatorTextDomain([string $textDomain = 'default' ]) : $this
Parameters
$textDomain : string = 'default'
Return values
$this

setValueObscured()

Set flag indicating whether or not value should be obfuscated in messages

public setValueObscured(bool $flag) : $this
Parameters
$flag : bool
Return values
$this

createMessage()

Constructs and returns a validation failure message with the given message key and value.

protected createMessage(string $messageKey, string|array<string|int, mixed>|object $value) : null|string

Returns null if and only if $messageKey does not correspond to an existing template.

If a translator is available and a translation exists for $messageKey, the translation will be used.

Parameters
$messageKey : string
$value : string|array<string|int, mixed>|object
Return values
null|string

error()

protected error(string|null $messageKey[, null|string|array<string|int, mixed>|object $value = null ]) : void
Parameters
$messageKey : string|null
$value : null|string|array<string|int, mixed>|object = null

OPTIONAL

getFileInfo()

Returns array if the procedure is identified

protected getFileInfo(string|array<string|int, mixed>|object $value[, null|array<string|int, mixed> $file = null ][, bool $hasType = false ][, bool $hasBasename = false ]) : array<string|int, mixed>
Parameters
$value : string|array<string|int, mixed>|object

Filename to check

$file : null|array<string|int, mixed> = null

File data (when using legacy Laminas_File_Transfer API)

$hasType : bool = false

Return with filetype (optional)

$hasBasename : bool = false

Return with basename - is calculated from location path (optional)

Return values
array<string|int, mixed>

getValue()

Returns the validation value

protected getValue() : mixed
Return values
mixed

Value to be validated

setValue()

Sets the value to be validated and clears the messages and errors arrays

protected setValue(mixed $value) : void
Parameters
$value : mixed

translateMessage()

Translate a validation message

protected translateMessage(string $messageKey, string $message) : string
Parameters
$messageKey : string
$message : string
Return values
string

getFileBasedFileInfo()

Generate file information array with base method

private getFileBasedFileInfo(string $file[, bool $hasType = false ][, bool $hasBasename = false ]) : array<string|int, mixed>
Parameters
$file : string

File path

$hasType : bool = false

Return with filetype

$hasBasename : bool = false

Filename is calculated from location path

Return values
array<string|int, mixed>

getLegacyFileInfo()

Generate file information array with legacy Laminas_File_Transfer API

private getLegacyFileInfo(array<string|int, mixed> $file[, bool $hasType = false ][, bool $hasBasename = false ]) : array<string|int, mixed>
Parameters
$file : array<string|int, mixed>

File data

$hasType : bool = false

Return with filetype

$hasBasename : bool = false

Basename is calculated from location path

Return values
array<string|int, mixed>

getPsr7FileInfo()

Generate file information array with PSR-7 UploadedFileInterface

private getPsr7FileInfo(UploadedFileInterface $file[, bool $hasType = false ][, bool $hasBasename = false ]) : array<string|int, mixed>
Parameters
$file : UploadedFileInterface
$hasType : bool = false

Return with filetype

$hasBasename : bool = false

Filename is calculated from location path

Return values
array<string|int, mixed>

getSapiFileInfo()

Generate file information array with SAPI

private getSapiFileInfo(array<string|int, mixed> $file[, bool $hasType = false ][, bool $hasBasename = false ]) : array<string|int, mixed>
Parameters
$file : array<string|int, mixed>

File data from SAPI

$hasType : bool = false

Return with filetype

$hasBasename : bool = false

Filename is calculated from location path

Return values
array<string|int, mixed>

        
On this page

Search results