ivopetkov / object-storage
A better way to work with files
Fund package maintenance!
ivopetkov
www.paypal.me/ivopetkovcom
Installs: 8 519
Dependents: 1
Suggesters: 0
Security: 0
Stars: 13
Watchers: 4
Forks: 0
Open Issues: 0
Requires
- php: 7.1.*|7.2.*|7.3.*|7.4.*|8.0.*|8.1.*|8.2.*|8.3.*
Requires (Dev)
README
File-based object storage with simple API, metadata support, atomic operations and transactions.
Install via Composer
composer require ivopetkov/object-storage
Documentation
Full documentation is available as part of this repository.
Example
$storage = new \IvoPetkov\ObjectStorage('path/to/the/data/dir/'); // Save data $storage->set([ 'key' => 'books/1449392776', 'body' => 'book 1449392776 content in pdf format', 'metadata.title' => 'Programming PHP', 'metadata.authors' => '["Kevin Tatroe", "Peter MacIntyre", "Rasmus Lerdorf"]', 'metadata.year' => '2013' ]); // Retrieve data $result = $storage->get([ 'key' => 'books/1449392776', 'result' => ['body', 'metadata.title'] ]); // Array // ( // [body] => 'book 1449392776 content in pdf format' // [metadata.title] => 'Programming PHP' // )
License
This project is licensed under the MIT License. See the license file for more information.
Contributing
Feel free to open new issues and contribute to the project. Let's make it awesome and let's do in a positive way.
Author
This library is created and maintained by Ivo Petkov (ivopetkov.com).