A PHP library to query a database.
Installs: 16
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/michaelrushton/db
Requires
- php: ^8.4
Requires (Dev)
- pestphp/pest: ^4.1
This package is auto-updated.
Last update: 2025-10-26 09:09:25 UTC
README
A PHP library to query a database.
Installation
composer require michaelrushton/php-db
Documentation
Drivers
Connection
exec
See https://www.php.net/manual/en/pdo.exec.php.
$count = $connection->exec("DELETE FROM users");
query
See https://www.php.net/manual/en/pdo.query.php.
$pdo_stmt = $connection->query("SELECT * FROM users"); $pdo_stmt = $connection->query("SELECT * FROM users", $fetchMode, ...$fetchModeArgs);
prepare
See https://www.php.net/manual/en/pdo.prepare.php.
$pdo_stmt = $connection->prepare("SELECT * FROM users WHERE id = ?"); $pdo_stmt = $connection->prepare("SELECT * FROM users WHERE id = ?", $options);
execute
See https://www.php.net/manual/en/pdostatement.execute.php.
$pdo_stmt = $connection->execute("SELECT * FROM users WHERE id = ?", [1]);
fetch
See https://www.php.net/manual/en/pdostatement.fetch.php.
$user = $connection->fetch("SELECT * FROM users WHERE id = ?", [1]); $user = $connection->fetch("SELECT * FROM users WHERE id = ?", [1], $mode, $cursorOrientation, $cursorOffset);
fetchAll
See https://www.php.net/manual/en/pdostatement.fetchall.php.
$users = $connection->fetchAll("SELECT * FROM users WHERE status = ?", [1]); $users = $connection->fetchAll("SELECT * FROM users WHERE status = ?", [1], $mode, ...$args);
fetchColumn
See https://www.php.net/manual/en/pdostatement.fetchcolumn.php
$id = $connection->fetchColumn("SELECT * FROM users WHERE id = ?", [1]); $id = $connection->fetchColumn("SELECT * FROM users WHERE id = ?", [1], $column);
fetchObject
See https://www.php.net/manual/en/pdostatement.fetchobject.php
$user = $connection->fetchObject("SELECT * FROM users WHERE id = ?", [1]); $user = $connection->fetchObject("SELECT * FROM users WHERE id = ?", [1], $class, $constructorArgs);
yield
See https://www.php.net/manual/en/pdostatement.fetch.php.
$generator = $connection->yield("SELECT * FROM users WHERE status = ?", [1]); $generator = $connection->yield("SELECT * FROM users WHERE status = ?", [1], $mode, $cursorOrientation, $cursorOffset);
transaction
Begins a transaction, rolls back if an exception is thrown (rethrowing the exception), else commits.
use MichaelRushton\DB\Connection; $connection->transaction(function (Connection $connection) { $connection->query("INSERT INTO users (id) VALUES (1)"); $connection->query("INSERT INTO users (id) VALUES (2)"); });
Query builders
exec
$count = $connection->delete()->from('users')->exec();
query
$pdo_stmt = $connection->select()->from('users')->query(); $pdo_stmt = $connection->select()->from('users')->query($fetchMode, ...$fetchModeArgs);
prepare
$pdo_stmt = $connection->select()->from('users')->where('id = ?')->prepare(); $pdo_stmt = $connection->select()->from('users')->where('id = ?')->prepare($options);
execute
$pdo_stmt = $connection->select()->from('users')->where('id', 1)->execute();
fetch
$user = $connection->select()->from('users')->where('id', 1)->fetch(); $user = $connection->select()->from('users')->where('id', 1)->fetch($mode, $cursorOrientation, $cursorOffset);
fetchAll
$users = $connection->select()->from('users')->where('status', 1)->fetchAll(); $users = $connection->select()->from('users')->where('status', 1)->fetchAll($mode, ...$args);
fetchColumn
$id = $connection->select()->from('users')->where('id', 1)->fetchColumn(); $id = $connection->select()->from('users')->where('id', 1)->fetchColumn($column);
fetchObject
$user = $connection->select()->from('users')->where('id', 1)->fetchObject(); $user = $connection->select()->from('users')->where('id', 1)->fetchObject($class, $constructorArgs);
yield
$generator = $connection->select()->from('users')->where('status', 1)->yield(); $generator = $connection->select()->from('users')->where('status', 1)->yield($mode, $cursorOrientation, $cursorOffset);