PHP Class FileUpload\FileUpload

Afficher le fichier Open project: gargron/fileupload Class Usage Examples

Protected Properties

Свойство Type Description
$callbacks array Callbacks to be run
$fileContainer FileUpload\File File Container instance
$filename_generator FileUpload\FileNameGenerator\FileNameGenerator Path resolver instance
$files array The array of uploaded files
$filesystem FileUpload\FileSystem\FileSystem File system instance
$logger Psr\Log\LoggerInterface Optional logger
$messages array Default messages
$pathresolver FileUpload\PathResolver\PathResolver Path resolver instance
$server array $_SERVER
$upload array $_FILES
$validators array Validators to be run

Méthodes publiques

Méthode Description
__construct ( array $upload, array $server, FileUpload\FileNameGenerator\FileNameGenerator $generator = null ) Construct this mother
addCallback ( string $event, Closure $callback ) Register callback for an event
addValidator ( FileUpload\Validator\Validator $v ) Add another validator
getFileContainer ( ) : FileUpload\File
getFileNameGenerator ( ) : FileUpload\FileNameGenerator\FileNameGenerator
getFileSystem ( ) : FileUpload\FileSystem\FileSystem
getFiles ( ) : array Returns an array of all uploaded files
getLogger ( ) : Psr\Log\LoggerInterface
getMessage ( integer $code ) : string Get an error message
getPathResolver ( ) : FileUpload\PathResolver\PathResolver
processAll ( ) : array Process entire submitted request
setFileNameGenerator ( FileUpload\FileNameGenerator\FileNameGenerator $fng ) Set filename generator
setFileSystem ( FileUpload\FileSystem\FileSystem $fs ) Set file system
setLogger ( Psr\Log\LoggerInterface $logger ) Set logger, optionally
setMessages ( array $new_messages ) Merge (overwrite) default error messages
setPathResolver ( FileUpload\PathResolver\PathResolver $pr ) Set path resolver

Méthodes protégées

Méthode Description
fixIntegerOverflow ( integer $int ) : float Ensure correct value for big integers
getConfigBytes ( string $val ) : float Convert size format from PHP config into bytes
getContentLength ( ) : integer Content-length header
getContentRange ( ) : array Content-range header
getContentType ( ) : string Content-type header
getFilename ( string $name, string $type, integer $index, array $content_range, string $tmp_name ) : string Get filename for submitted filename
getFilesize ( string $path, boolean $clear_cache = false ) : float Get size of file
getNewHeaders ( array $files, array $content_range ) : array Generate headers for response
getSize ( ) : integer Request size
process ( string $tmp_name, string $name, integer $size, string $type, integer $error, integer $index, array $content_range = null ) : FileUpload\File Process single submitted file
processCallbacksFor ( string $eventName, FileUpload\File $file ) : void Process callbacks for a given event
trimFilename ( string $name, string $type, integer $index, array $content_range ) : string Remove harmful characters from filename
validate ( string $tmp_name, FileUpload\File $file, integer $error, integer $index ) : boolean Validate upload using some default rules, and custom validators added via addValidator. Default rules:

Private Methods

Méthode Description
prepareMessages ( ) Converts $messages array into a hash with strings as keys This allows us to work with the keys and values as if it was a hash Which it really should be but, well, arrays in PHP, am I right?

Method Details

__construct() public méthode

Construct this mother
public __construct ( array $upload, array $server, FileUpload\FileNameGenerator\FileNameGenerator $generator = null )
$upload array
$server array
$generator FileUpload\FileNameGenerator\FileNameGenerator

addCallback() public méthode

Register callback for an event
public addCallback ( string $event, Closure $callback )
$event string
$callback Closure

addValidator() public méthode

Add another validator
public addValidator ( FileUpload\Validator\Validator $v )
$v FileUpload\Validator\Validator

fixIntegerOverflow() protected méthode

Ensure correct value for big integers
protected fixIntegerOverflow ( integer $int ) : float
$int integer
Résultat float

getConfigBytes() protected méthode

Convert size format from PHP config into bytes
protected getConfigBytes ( string $val ) : float
$val string
Résultat float

getContentLength() protected méthode

Content-length header
protected getContentLength ( ) : integer
Résultat integer

getContentRange() protected méthode

Content-range header
protected getContentRange ( ) : array
Résultat array

getContentType() protected méthode

Content-type header
protected getContentType ( ) : string
Résultat string

getFileContainer() public méthode

public getFileContainer ( ) : FileUpload\File
Résultat FileUpload\File

getFileNameGenerator() public méthode

public getFileNameGenerator ( ) : FileUpload\FileNameGenerator\FileNameGenerator
Résultat FileUpload\FileNameGenerator\FileNameGenerator

getFileSystem() public méthode

public getFileSystem ( ) : FileUpload\FileSystem\FileSystem
Résultat FileUpload\FileSystem\FileSystem

getFilename() protected méthode

Get filename for submitted filename
protected getFilename ( string $name, string $type, integer $index, array $content_range, string $tmp_name ) : string
$name string
$type string
$index integer
$content_range array
$tmp_name string
Résultat string

getFiles() public méthode

Returns an array of all uploaded files
public getFiles ( ) : array
Résultat array

getFilesize() protected méthode

Get size of file
protected getFilesize ( string $path, boolean $clear_cache = false ) : float
$path string
$clear_cache boolean
Résultat float

getLogger() public méthode

public getLogger ( ) : Psr\Log\LoggerInterface
Résultat Psr\Log\LoggerInterface

getMessage() public méthode

Get an error message
public getMessage ( integer $code ) : string
$code integer
Résultat string

getNewHeaders() protected méthode

Generate headers for response
protected getNewHeaders ( array $files, array $content_range ) : array
$files array
$content_range array
Résultat array

getPathResolver() public méthode

public getPathResolver ( ) : FileUpload\PathResolver\PathResolver
Résultat FileUpload\PathResolver\PathResolver

getSize() protected méthode

Request size
protected getSize ( ) : integer
Résultat integer

process() protected méthode

Process single submitted file
protected process ( string $tmp_name, string $name, integer $size, string $type, integer $error, integer $index, array $content_range = null ) : FileUpload\File
$tmp_name string
$name string
$size integer
$type string
$error integer
$index integer
$content_range array
Résultat FileUpload\File

processAll() public méthode

Process entire submitted request
public processAll ( ) : array
Résultat array Files and response headers

processCallbacksFor() protected méthode

Process callbacks for a given event
protected processCallbacksFor ( string $eventName, FileUpload\File $file ) : void
$eventName string
$file FileUpload\File
Résultat void

setFileNameGenerator() public méthode

Set filename generator
public setFileNameGenerator ( FileUpload\FileNameGenerator\FileNameGenerator $fng )
$fng FileUpload\FileNameGenerator\FileNameGenerator

setFileSystem() public méthode

Set file system
public setFileSystem ( FileUpload\FileSystem\FileSystem $fs )
$fs FileUpload\FileSystem\FileSystem

setLogger() public méthode

Set logger, optionally
public setLogger ( Psr\Log\LoggerInterface $logger )
$logger Psr\Log\LoggerInterface

setMessages() public méthode

Merge (overwrite) default error messages
public setMessages ( array $new_messages )
$new_messages array

setPathResolver() public méthode

Set path resolver
public setPathResolver ( FileUpload\PathResolver\PathResolver $pr )
$pr FileUpload\PathResolver\PathResolver

trimFilename() protected méthode

Remove harmful characters from filename
protected trimFilename ( string $name, string $type, integer $index, array $content_range ) : string
$name string
$type string
$index integer
$content_range array
Résultat string

validate() protected méthode

- No PHP errors from $_FILES - File size permitted by PHP config
protected validate ( string $tmp_name, FileUpload\File $file, integer $error, integer $index ) : boolean
$tmp_name string
$file FileUpload\File
$error integer
$index integer
Résultat boolean

Property Details

$callbacks protected_oe property

Callbacks to be run
protected array $callbacks
Résultat array

$fileContainer protected_oe property

File Container instance
protected File,FileUpload $fileContainer
Résultat FileUpload\File

$filename_generator protected_oe property

Path resolver instance
protected FileNameGenerator,FileUpload\FileNameGenerator $filename_generator
Résultat FileUpload\FileNameGenerator\FileNameGenerator

$files protected_oe property

The array of uploaded files
protected array $files
Résultat array

$filesystem protected_oe property

File system instance
protected FileSystem,FileUpload\FileSystem $filesystem
Résultat FileUpload\FileSystem\FileSystem

$logger protected_oe property

Optional logger
protected LoggerInterface,Psr\Log $logger
Résultat Psr\Log\LoggerInterface

$messages protected_oe property

Default messages
protected array $messages
Résultat array

$pathresolver protected_oe property

Path resolver instance
protected PathResolver,FileUpload\PathResolver $pathresolver
Résultat FileUpload\PathResolver\PathResolver

$server protected_oe property

$_SERVER
protected array $server
Résultat array

$upload protected_oe property

$_FILES
protected array $upload
Résultat array

$validators protected_oe property

Validators to be run
protected array $validators
Résultat array