falbar / laravel-system-file
Uploading files to the server.
Installs: 150
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
pkg:composer/falbar/laravel-system-file
Requires
- php: ^8.1
- ext-fileinfo: *
- dusank/knapsack: ^10.0
- laravel/framework: ^9.0|^10.0|^11.0
README
Install
To install package, you need run command:
composer require akbsit/laravel-system-file
Next install migrations:
php artisan migrate
Usage
To connect package to the model, you need to add a trait InteractsMedia:
use Akbsit\SystemFile\Traits\InteractsMedia; use Illuminate\Database\Eloquent\Model; class User extends Model { use InteractsMedia; }
Examples
- Upload image:
User::first() ->addMedia('<file_url>') ->setFileName('user1') ->put();
- Attach one file to the model (the old one will be overwritten when re-uploading):
User::first() ->addMedia('<file_url>') ->setFileName('user1') ->single() ->put();
- Get first image:
$oSystemFile = User::first()->getMediaFirst();
- Get images list:
$oSystemFileList = User::first()->getMedia();
Methods and properties
media- list of files attached to the model;addMedia($file)- attach file to the model:$file- object/link of the uploaded file.
mediaExists(string $sCollection)- check for attached files (by defaultdefault);getMedia(string $sCollection)- list of collection files (by defaultdefault);getMediaFirst(string $sCollection)- first element of the collection (by defaultdefault).
media
getUrl()- absolute file path;getPath()- path to the file;getWidthAndHeight()- get file sizes (for images);getWidth()- get width (for images);getHeight()- get height (for pictures);fileExists()- check for the presence of the file physically.
addMedia
setFile($file)- set object/link to a file;setModel(Model $oModel)- set model;enablePartition()- enable folder generation (example:73c/d53/dce);single()- add one file to the model (all others are deleted if they were previously attached);setOriginFileName(string $sOriginFileName)- set origin file name;setFileName(string $sFileName)- set file name;setProperties(array $arProperties)- set file properties;toDisk(string $sDisk)- set storage disk (by defaultpublic);toCollection(string $sCollection)- set collection (by defaultdefault);toDir(string $sDir)- set storage folder (by defaultdefault);put()- save file.
Console commands
File synchronization
php artisan system-file:sync