inanepain / db
Some helpers for database task and query construction.
Installs: 5
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 0
pkg:composer/inanepain/db
Requires
- php: >=8.4
- inanepain/stdlib: * || dev-master || dev-develop
This package is auto-updated.
Last update: 2025-11-24 18:53:46 UTC
README
Table of Contents
inanepain/db
Some helpers for database task and query construction.
1. Install
Example 1. composercomposer require inanepain/db
2. Usage
2.1. SQLQueryBuilder
$qb = new SQLQueryBuilder(); $query = $qb ->select('users', ['name', 'email', 'password']) ->where('age', 18, '>') ->where('age', 30, '<') ->limit(10, 20); echo "-- Testing MySQL query builder:\n"; echo $qb->getSQLFor(new MysqlQueryBuilder()); echo "\n\n"; echo "-- Testing PostgresSQL query builder:\n"; echo $qb->getSQLFor(new PostgresQueryBuilder());
Which should give you:
-- Testing MySQL query builder: SELECT name, email, password FROM users WHERE age > 18 AND age < 30 LIMIT 10, 20; -- Testing PostgresSQL query builder: SELECT name, email, password FROM users WHERE age > 18 AND age < 30 LIMIT 10 OFFSET 20;
2.1.1. Where
Restricting your queries with where clauses.
$wheres = [ ['views', 10, '>'], new WhereClause('favourite', 1), ['name', 'Bob'], [['name', 'John']], ]; $qb = new SqliteQueryBuilder(); $qb->select('fortunes', ['fortune']) // ->where('views', 10, '>') ->wheres($wheres) ; echo((string)$qb);
Which should give you:
SELECT fortune FROM fortunes WHERE views > 10 and favourite = 1 and name = 'Bob' or name = 'John';
3. Revision
version: $Id$ ($Date$)