unclexo / filestorage
A blazing fast and light-weight flat-file storage designed for storing array data to keys
1.0.0
2020-06-01 07:02 UTC
Requires
- php: ^7.3
Requires (Dev)
- phpstan/phpstan: ^0.12.25
- phpunit/phpunit: ^9.1
This package is auto-updated.
Last update: 2024-03-29 04:18:42 UTC
README
A blazing fast and light-weight flat-file storage designed for storing array data to keys.
Sample Array Data
<?php $data = [ 'facebook' => [ 'clientId' => 'facebookClientId', 'clientSecret' => 'facebookClientSecret', 'redirectUri' => 'facebookRedirectUri', ], 'twitter' => [ 'clientId' => 'twitterClientId', 'clientSecret' => 'twitterClientSecret', 'redirectUri' => 'twitterRedirectUri', ], ];
Alternatively, you can store (key => value) pairs too.
<?php $data = [ 'key' => 'value', 'more_key' => ['key' => 'value'], ];
Download using composer
composer require unclexo/filestorage
Creating a store
filestorage
stores array data into a file. You can create a file-storage using Storage::create($data, $location)
.
Keep in mind $location
must be existed and writable.
<?php require_once './vendor/autoload.php'; use Xo\Storage\Storage; $data = [ 'facebook' => [ 'clientId' => 'facebookClientId', 'clientSecret' => 'facebookClientSecret', 'redirectUri' => 'facebookRedirectUri', ], 'twitter' => [ 'clientId' => 'twitterClientId', 'clientSecret' => 'twitterClientSecret', 'redirectUri' => 'twitterRedirectUri', ], ]; /** File must be writable */ $location = '/home/username/data/storage.txt'; Storage::create($data, $location);
Using the store
Once you've created a store, you can use the store through the whole application. Just create an instance of the store specifying the file location and use wherever you need it.
<?php require_once './vendor/autoload.php'; use Xo\Storage\Storage; $location = '/home/username/data/storage.txt'; Storage::getInstance($location);
Get data for a given key
Now, you're able to get value for a given key from the store you created earlier.
<?php Storage::get('facebook'); /** returns */ [ 'clientId' => 'facebookClientId', 'clientSecret' => 'facebookClientSecret', 'redirectUri => 'facebookRedirectUri', ]
To set data
<?php Storage::set(string $key, mixed $value);
To update data
<?php Storage::update(string $key, array $array);
To check the availability of a key
<?php Storage::has(string $key);
To get all data
<?php Storage::all();
To remove data
<?php Storage::remove(string $key);
To clear all data
<?php Storage::clear();
To delete the store
<?php Storage::delete();