All Projects → strzlee → JsonDB.class.php

strzlee / JsonDB.class.php

Licence: WTFPL license
JSON Databaseclass. Handle JSON-Files like a very, very simple DB.

Programming Languages

PHP
23972 projects - #3 most used programming language

Projects that are alternatives of or similar to JsonDB.class.php

localdb
library to help you create database on local memory, support json local database inspired by lowdb
Stars: ✭ 35 (-61.54%)
Mutual labels:  jsondb

This is a fork of Straussn's JSON-Databaseclass.

  • Added createTable() method for creating new tables (.json files)
  • Added optional table creation on insert() method, if table doesn't exist.

Use it like this:

$db = new JsonDB("./my_json_database/");

$db->createTable("my_new_table");

$db->insert("my_new__new_table", array("newkey2" => "newvalue2"), true);

$my_another_new_table = new JsonTable("./string_statuses/demo14.json", true);
$my_another_new_table->insert(array("newkey2" => "newvalue2"));

Straussn's JSON-Databaseclass

Handle JSON-Files like a very, very simple DB. Useful for little ajax applications.

Example:

test.json

[  
{"ID": 0, "Name": "Josef Brunzer", "Age": 43},  
{"ID": 1, "Name": "Harald Beidlpraka", "Age": 34},  
{"ID": 2, "Name": "Heinz Goschnfuada", "Age": 67},  
{"ID": 3, "Name": "Gerald Ofnsacka", "Age": 43}  
]

test.php

require "JsonDB.class.php";

$db = new JsonDB("./data/"); //parameter => directory to your json files

$result = $db->select("test","Age",43); //parameter => json file (tablename), key, value

result:

array(2) {
[0]=> array(3) { ["ID"]=> int(0) ["Name"]=> string(13) "Josef Brunzer" ["Age"]=> int(43) }
[1]=> array(3) { ["ID"]=> int(3) ["Name"]=> string(15) "Gerald Ofnsacka" ["Age"]=> int(43) }
}

If you use a different file extension as ".json", set them via "JsonDB -> setExtension ('.example')"


Method Overview:

JsonDB -> select ( "table", "key", "value" ) - Selects multible lines which contains the key/value and returns it as array

JsonDB -> selectAll ( "table" ) - Returns the entire file as array

JsonDB -> update ( "table", "key", "value", ARRAY ) - Replaces the line which corresponds to the key/value with the array-data

JsonDB -> updateAll ( "table", ARRAY ) - Replaces the entire file with the array-data

JsonDB -> insert ( "table", ARRAY ) - Appends a row, returns true on success

JsonDB -> delete ( "table", "key", "value" ) - Deletes all lines which corresponds to the key/value, returns number of deleted lines

JsonDB -> deleteAll ( "table" ) - Deletes the whole data, returns "true" on success


If you use only one json file to store data, you can also use the "JsonTable" Class:

$db = new JsonTable("./data/test.json"); //parameter => your json file

$result = $db -> selectAll();

$db -> update ( "ID", 1, array("ID" => 1, "Name" => "Fani Zwidawurzn", "Age" => 66));

$db -> delete( "ID", 2 );

In this case, you don't have always to specify the "tablename".

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].