PHP Class mdm\upload\UploadBehavior

Usage at [[\yii\base\Model::behaviors()]] add the following code ~~~ return [ ... [ 'class' => 'mdm\upload\UploadBehavior', 'uploadPath' => '@common/upload', // default to '@runtime/upload' 'attribute' => 'file', // attribute use to receive from FileField 'savedAttribute' => 'file_id', // attribute use to receive id of file ], ]; ~~~
Since: 1.0
Author: Misbahul D Munir ([email protected])
Inheritance: extends yii\base\Behavior
Afficher le fichier Open project: mdmsoft/yii2-upload-file Class Usage Examples

Méthodes publiques

Свойство Type Description
$attribute the attribute that will receive the uploaded file
$autoDelete when true then related file will be deleted on event 'beforeDelete'
$autoSave when true saveUploadedFile() will be called on event 'beforeSave'
$deleteOldFile boolean
$directoryLevel the level of sub-directories to store uploaded files. Defaults to 1. If the system has huge number of uploaded files (e.g. one million), you may use a bigger value (usually no bigger than 3). Using sub-directories is mainly to ensure the file system is not over burdened with a single directory having too many files.
$saveCallback Closure | string
$savedAttribute the attribute that will receive the file id
$uploadPath the directory to store uploaded files. You may use path alias here. If not set, it will use the "upload" subdirectory under the application runtime path.

Méthodes publiques

Méthode Description
__get ( $name )
__set ( $name, $value )
beforeDelete ( ModelEvent $event ) Event handler for beforeDelete
beforeSave ( ModelEvent $event ) Event handler for beforeSave
canGetProperty ( $name, $checkVars = true )
canSetProperty ( $name, $checkVars = true )
events ( )
getSavedFile ( ) : FileModel Get saved file
init ( )
saveUploadedFile ( boolean $deleteOldFile = null ) : boolean | null Save uploaded file into [[$uploadPath]]

Method Details

__get() public méthode

public __get ( $name )

__set() public méthode

public __set ( $name, $value )

beforeDelete() public méthode

Event handler for beforeDelete
public beforeDelete ( ModelEvent $event )
$event yii\base\ModelEvent

beforeSave() public méthode

Event handler for beforeSave
public beforeSave ( ModelEvent $event )
$event yii\base\ModelEvent

canGetProperty() public méthode

public canGetProperty ( $name, $checkVars = true )

canSetProperty() public méthode

public canSetProperty ( $name, $checkVars = true )

events() public méthode

public events ( )

getSavedFile() public méthode

Get saved file
public getSavedFile ( ) : FileModel
Résultat FileModel

init() public méthode

public init ( )

saveUploadedFile() public méthode

Save uploaded file into [[$uploadPath]]
public saveUploadedFile ( boolean $deleteOldFile = null ) : boolean | null
$deleteOldFile boolean If true and file exists, file will be deleted.
Résultat boolean | null if success return true, fault return false. Return null mean no uploaded file.

Property Details

$attribute public_oe property

the attribute that will receive the uploaded file
public $attribute

$autoDelete public_oe property

when true then related file will be deleted on event 'beforeDelete'
public $autoDelete

$autoSave public_oe property

when true saveUploadedFile() will be called on event 'beforeSave'
public $autoSave

$deleteOldFile public_oe property

public bool $deleteOldFile
Résultat boolean

$directoryLevel public_oe property

the level of sub-directories to store uploaded files. Defaults to 1. If the system has huge number of uploaded files (e.g. one million), you may use a bigger value (usually no bigger than 3). Using sub-directories is mainly to ensure the file system is not over burdened with a single directory having too many files.
public $directoryLevel

$saveCallback public_oe property

public Closure|string $saveCallback
Résultat Closure | string

$savedAttribute public_oe property

the attribute that will receive the file id
public $savedAttribute

$uploadPath public_oe property

the directory to store uploaded files. You may use path alias here. If not set, it will use the "upload" subdirectory under the application runtime path.
public $uploadPath