spastudio/filedatabase

此包已被废弃,不再维护。没有建议的替代包。

在 https://github.com/Greg0/Lazer-Database 后进行分支

2.0.5 2024-09-22 22:17 UTC

This package is auto-updated.

Last update: 2024-09-22 22:18:23 UTC


README

composer require sapistudio/filedatabase
结束方法
  • addFields() - 将新字段追加到现有表中
  • deleteFields() - 从现有表中删除字段
  • save() - 插入或更新数据。
  • delete() - 删除数据。
  • getConfig() - 返回包含配置的对象。
  • fields() - 返回包含字段名称的数组。
  • schema() - 返回包含字段名称和字段类型的关联数组 field => type
  • get() - 返回具有指定 ID 的单行。
  • findAll() - 返回所有行
  • asArray() - 返回索引或关联数组格式的数据:['field_name' => 'field_name']。应在结束方法 select 后使用。
  • count() - 返回行数。应在结束方法 find_all()find() 后使用。

初始化

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

删除数据库

$dbObject->removeDatabase();

检查数据库是否存在

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

多选

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

单记录选择

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

插入

如果字段不存在,将添加该字段,类型为字符串

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

不要设置 ID。

更新

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

单记录删除

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

多记录删除

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

清空表

$dbObject->truncate();