sapistudio/filedatabase

This package is abandoned and no longer maintained. No replacement package was suggested.

Fork after https://github.com/Greg0/Lazer-Database

2.0.3.3 2020-03-20 14:17 UTC

This package is auto-updated.

Last update: 2020-08-20 15:23:12 UTC


README

composer require sapistudio/filedatabase
Ending methods
  • addFields() - append new fields into existing table
  • deleteFields() - removing fields from existing table
  • save() - insert or Update data.
  • delete() - deleting data.
  • getConfig() - returns object with configuration.
  • fields() - returns array with fields name.
  • schema() - returns assoc array with fields name and fields type field => type.
  • get() - returns one row with specified ID.
  • findAll() - returns all rows
  • asArray() - returns data as indexed or assoc array: ['field_name' => 'field_name']. Should be used after ending method select.
  • count() - returns the number of rows. Should be used after ending method find_all() or find().

Initiate

use \SapiStudio\FileDatabase\Handler as Database;
$dbObject = Database::load($dbname,['dir' => 'path/to/database/dir','fields' => $[{field_name} => {field_type}]]);

Remove database

$dbObject->removeDatabase();

Check if a database exists

$dbObject->exists();//return boolean

Multiple select

$rows = $dbObject->findAll();
    
foreach($rows as $row)
{
    print_r($row);
}

Single record select

$row = $dbObject->get(1);
echo $row->id;

Insert

If the field doesnt exists,it will append that field,with type of string

$dbObject->nickname = 'new_user';
$dbObject->save();

Do not set the ID.

Update

$row = $dbObject->get(1); //Edit row with ID 1
$row->nickname = 'edited_user';
$row->save();

Single record deleting

$dbObject->get(1)->delete(); //Will remove row with ID 1

Multiple records deleting

$dbObject->query()->where('name', '=', 'John')->find()->delete(); //Will remove John from DB

Clear table

$dbObject->truncate();