twoleds/database-pdo

通过pdo扩展实现访问数据库的简单接口。

1.0 2019-02-03 12:06 UTC

This package is auto-updated.

Last update: 2024-09-29 05:28:13 UTC


README

此包为从twoleds/database包中访问数据库提供简单接口的实现。

示例

$database = new PDODatabase("... pdo dsn", "user", "password", [
    // ... pdo attributes
]); 

$userId = $database->insert(
    'INSERT INTO user (name, email) VALUES (?, ?)',
    'Spike',
    'spike@example.com'
);

$users = $database->select(
    'SELECT * FROM user WHERE email LIKE ?',
    '%@example.com'
);

$count = $database->selectField(
    'SELECT COUNT(*) FROM user WHERE email LIKE ?',
    '%@example.com'
);

$user = $database->selectRow(
    'SELECT * FROM user WHERE id = ?',
    123
);

$database->update(
    'UPDATE user SET name = ? WHERE id = ?',
    'Xavier',
    123
);

$database->update(
    'DELETE user WHERE id = ?',
    123
);

$database->transactional(function ($database) {
    $counter = $database->selectField(
        'SELECT counter FROM user WHERE id = ? FOR UPDATE',
        123
    );
    $counter = $counter + 1;
    $database->update(
        'UPDATE user SET counter = ? WHERE id = ?',
        123
    );
});