Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/chialab/php-object-storage
A collection of adapters for various object storage services.
https://github.com/chialab/php-object-storage
Last synced: about 2 months ago
JSON representation
A collection of adapters for various object storage services.
- Host: GitHub
- URL: https://github.com/chialab/php-object-storage
- Owner: chialab
- License: mit
- Created: 2022-05-25T16:48:44.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-07-19T07:40:02.000Z (6 months ago)
- Last Synced: 2024-10-24T18:06:38.963Z (2 months ago)
- Language: PHP
- Size: 123 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# PHP Object Storage
This library provides a PHP implementation for using various object storage backends.
## Installation
You can install this library using [composer](https://getcomposer.org):
```shell
composer install chialab/object-storage
```To use AWS S3 as a backend storage, the SDK is also needed:
```shell
composer install aws/aws-sdk-php
```## Adapters
The plugin currently provides the following adapters.
You can create other adapters by implementing `MultipartUploadInterface`.
### `FilesystemAdapter`
This adapter uses the filesystem to store objects.
Takes an ordered array of arguments:
1. path to the root files folder
2. path to the temporary folder where multipart uploads are stored until finalization
3. base for object URLs from which the webserver serves the files
4. an optional umask for created files (defaults to octal `0077`)### `S3Adapter`
This adapter uses an AWS S3 bucket to store objects.
Takes an ordered array of arguments:
1. an `Aws\S3\S3Client` instance
2. the name of the bucket
3. an optional key prefix to use for all files (defaults to empty)
4. an optional custom base for object URLs (defaults to empty)### `InMemoryAdapter`
This adapter uses volatile memory to store objects.
Takes only one argument:
1. base for object URLs