tiny 'n' smart
database layer

Dibi je Database Abstraction Library

Dibi podporuje mnoho významných databází: MySQL, PostgreSQL, SQLite, MS SQL, Oracle, Access a obecné PDO a ODBC.

Instalace

Nejnovější stabilní verzi Dibi instalujte pomocí Composeru příkazem:

composer require dibi/dibi

Příklady

// připojení k databázi
$database = new Dibi\Connection([
    'driver'   => 'mysqli',
    'host'     => 'localhost',
    'username' => 'root',
    'password' => '***',
    'database' => 'table',
]);

// SELECT
$result = $database->query('SELECT * FROM users');

foreach ($result as $row) {
    echo $row->id;
    echo $row->name;
}

$value = $result->fetchSingle(); // vrací první buňku
$all = $result->fetchAll(); // pole všech řádků
$assoc = $result->fetchAssoc('id'); // pole všech řádků, klíčem je id
$pairs = $result->fetchPairs('id', 'name'); // vrací asociativní pole id => name

// INSERT & UPDATE
$arr = [
    'name' => 'John',
    'is_admin'  => true,
];

$database->query('INSERT INTO users', $arr);
// INSERT INTO users (`name`, `is_admin`) VALUES ('John', 1)

$database->query('UPDATE users SET', $arr, 'WHERE id=?', $id);
// UPDATE users SET `name`='John', `is_admin`=1 WHERE id = 123

Více v dokumentaci.