Download the PHP package websk/php-filemanager without Composer
On this page you can find all versions of the php package websk/php-filemanager. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download websk/php-filemanager
More information about websk/php-filemanager
Files in websk/php-filemanager
Package php-filemanager
Short Description File storage abstraction for local, Amazon S3, and SFTP backends.
License MIT
Informations about the package php-filemanager
php-filemanager
websk/php-filemanager provides one file-management API for local, Amazon S3-compatible, and SFTP storage through Flysystem 3.
Requirements
- PHP 8.3, 8.4, or 8.5
ext-fileinfoext-mbstring
Installation
Install the library with the local storage adapter:
S3 and SFTP support are optional. Install only the backend used by the application:
Selecting an optional adapter without its package throws a LogicException containing the required Composer command.
Configuration
FileManager reads storage definitions from the storages key in WebSK\Config\ConfWrapper. When using the bundled configuration file, pass its settings section to the wrapper:
Local storage
root_path must be a non-empty string. Flysystem paths passed to the library are normalized to forward slashes.
Amazon S3
The AWS SDK credential chain is used when access_key and secret_key are omitted:
For MinIO or another S3-compatible endpoint, provide the endpoint and credentials together:
access_key and secret_key must either both be set or both be omitted.
SFTP
host and username are required. Empty password, private-key, and passphrase values are normalized to null, so an empty private key does not accidentally select key authentication.
Uploading files
Pass one entry from $_FILES, a storage-relative target folder, and optionally a target base name:
The method checks the PHP upload error before is_uploaded_file(), validates configured MIME types and extensions with strict comparisons, creates a missing target directory, and closes the input stream even when Flysystem throws.
Development
Run all local checks:
The command runs PHP lint, PHPUnit, and PHPStan at level max. Remote round-trip tests are skipped unless their environment variables are configured:
- S3:
S3_TEST_BUCKET, with optionalS3_TEST_REGION,S3_TEST_ENDPOINT,S3_TEST_ACCESS_KEY, andS3_TEST_SECRET_KEY. - SFTP:
SFTP_TEST_HOSTandSFTP_TEST_USERNAME, with optionalSFTP_TEST_PASSWORD,SFTP_TEST_PRIVATE_KEY,SFTP_TEST_PASSPHRASE,SFTP_TEST_PORT, andSFTP_TEST_ROOT.
License
This project is licensed under the MIT License. See LICENSE.
All versions of php-filemanager with dependencies
ext-mbstring Version *
league/flysystem Version ^3.36
league/flysystem-local Version ^3.35
php Version ^8.3
websk/php-config Version 2.2.*