A blazing fast and light-weight flat-file storage designed for storing array data to keys.
<?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'],
];
composer require unclexo/filestorage
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);
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);
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',
]
<?php
Storage::set(string $key, mixed $value);
<?php
Storage::update(string $key, array $array);
<?php
Storage::has(string $key);
<?php
Storage::all();
<?php
Storage::remove(string $key);
<?php
Storage::clear();
<?php
Storage::delete();