PHP Classes

PHP JSON DB: Store and retrieve key-value pairs from JSON files

Recommend this page to a friend!
  Info   View files Documentation   View files View files (3)   DownloadInstall with Composer Download .zip   Reputation   Support forum   Blog    
Last Updated Ratings Unique User Downloads Download Rankings
2024-01-10 (2 months ago) RSS 2.0 feedNot enough user ratingsTotal: 550 This week: 1All time: 5,508 This week: 560Up
Version License PHP version Categories
json-db 1.9MIT/X Consortium ...5.2.17PHP 5, Databases, Files and Folders, C...
Description 

Author

This class can store and retrieve key-value pairs from JSON files.

It extends the Horus framework container class to store and retrieve values from files in the JSON format,

The values can optionally be encrypted and decrypted using a given key.

Picture of Mohammed Al Ashaal
  Performance   Level  
Name: Mohammed Al Ashaal <contact>
Classes: 8 packages by
Country: Egypt Egypt
Age: 30
All time rank: 128111 in Egypt Egypt
Week rank: 411 Up6 in Egypt Egypt Up
Innovation award
Innovation award
Nominee: 2x

Winner: 1x

Documentation

<h1>Horus JsonDB ?</h1> <blockquote> A secure json based flatfile key value store that helps you in quick and light developments . </blockquote>

<h1>When to use it ?</h1> <blockquote> <ul>

<li>Building a persistent registry system</li>
<li>Building a persistent caching system</li>
<li>Simple key value store</li>
<li>Store you application settings</li>
<li>Simple webblogs</li>

</ul> </blockquote>

<h1>Requirements ?</h1> <ul>

<li>Horus 9, from <a href="http://alash3al.github.io/Horus" target="_blank">here</a></li>

</ul>

<h1>Usage ?</h1>

<?php

    // load horus 9 and jsonDB
    require( "H9.php" );
    require( "JsonDB.php" );

    $app = new Horus;

    // initialize jsonDB from a local file
    // it will be created if not exists
    // the directory must be writable .

    $app->jsdb = new JsonDB('basic.file');

    // or tell it to encrypt the file on end
    // $app->jsdb = new JsonDB('secure.file', 'secret-key-to-be-used');

    // it extends Horus_Container Object
    // so it is very easy, just commit after ending .

    // set a key
    $app->jsdb->set('k1', 'v1');
    $app->jsdb->k2 = 'v2';
    $app->jsdb->set(array(
        'k3'    =>  'v3',
        'k4'    =>  'v4'
    ));

    // set a key to false
    $app->jsdb->disable('a_key');

    // check if it were disabled
    $app->jsdb->disabled('a_key');

    // set a key to true
    $app->jsdb->enable('a_key');

    // check if it were enabled
    $app->jsdb->enabled('a_key');

    // get a key
    $k1 = $app->jsdb->get('k1');
    $k3 = $app->jsdb->k3;

    // export all as array
    $all = $app->jsdb->export();

    // export as iterator
    $iterator = $app->jsdb->getIterator();

    // delete
    unset($app->jsdb->k4);

    // save changes "write all to the disk" ?
    $app->jsdb->commit();

    $app->run();

  Files folder image Files  
File Role Description
Plain text file JsonDB.php Class Class source
Accessible without login Plain text file LICENSE Lic. License text
Accessible without login Plain text file README.md Doc. Documentation

 Version Control Unique User Downloads Download Rankings  
 100%
Total:550
This week:1
All time:5,508
This week:560Up