blar/dba

dev-master 2016-12-22 20:49 UTC

This package is auto-updated.

Last update: 2024-08-29 03:47:37 UTC


README

License Latest Stable Version Build Status Coverage Status Dependency Status Flattr

DBA

PHP DBA 函数的面向对象接口。

使用方法

Apache Web服务器可以从DBM文件中加载用户认证信息。Authentifizierung aus einer DBM-Datei

示例

许多方法也可以通过数组语法访问。

可用的驱动程序

可用的驱动程序(在参数 driverName 中指定)可以通过静态方法 Dba::getDrivers() 获取。一个典型的输出可能如下所示

array(5) {
   [0]=>
   string(3) "cdb"
   [1]=>
   string(8) "cdb_make"
   [2]=>
   string(7) "inifile"
   [3]=>
   string(8) "flatfile"
   [4]=>
   string(4) "qdbm"
}

支持哪些数据库驱动程序取决于系统以及PHP编译时的设置。如果需要创建新的数据库文件,可以使用Tokyo Tyrant的Benchmark比较来决定使用哪个驱动程序。

创建数据库

INI文件

$dba = new Dba('test.ini', Dba::MODE_READ | Dba::MODE_WRITE | Dba::MODE_CREATE, [
    'driverName' => 'inifile'
]);

GNU数据库管理器(GDBM)

$dba = new Dba('test.gdbm', Dba::MODE_READ | Dba::MODE_WRITE | Dba::MODE_CREATE, [
    'driverName' => 'gdbm'
]);

小常数数据库(CDB)

CDB可以用 cdb_make 选项创建,或者用 cdb 选项读取。更新或删除条目是不可能的。

$dba = new Dba('test.cdb', Dba::MODE_WRITE | Dba::MODE_CREATE, [
    'driverName' => 'cdb_make'
]);

$dba = new Dba('test.cdb', Dba::MODE_READ, [
    'driverName' => 'cdb'
]);

设置条目

$dba->setValue('foo', 23);
$dba->setValue('bar', 42);

$dba['foo'] = 23;
$dba['bar'] = 42;

检查条目

$dba->exists('foo');

isset($dba['foo']);

添加条目

$dba->addValue('foo', 23);
$dba->addValue('foo', 42);

删除条目

$dba->removeValues('bar');

unset($dba['bar']);

读取数据库中的所有条目

foreach($dba as $key => $value) {
    var_dump($value);
}

安装

由于这个类是PHP DBA功能的包装器,因此必须安装这些功能才能使用这个类。这些功能可能作为操作系统上的独立包提供,或者已经与PHP一起编译。

依赖

在gemnasium上显示blar/dba的依赖

使用Composer安装

$ composer require blar/dba

使用Git安装

$ git clone https://github.com/blar/dba.git