Migrate from other database libraries to PDOdb.
$pdo = new PDO(
'mysql:host=localhost;dbname=test',
'user',
'pass'
);
$stmt = $pdo->prepare('SELECT * FROM users WHERE email = ?');
$stmt->execute(['user@example.com']);
$users = $stmt->fetchAll();use tommyknocker\pdodb\PdoDb;
$db = new PdoDb('mysql', [
'host' => 'localhost',
'dbname' => 'test',
'username' => 'user',
'password' => 'pass'
]);
$users = $db->find()
->from('users')
->where('email', 'user@example.com')
->get();$users = User::where('age', '>', 18)
->where('active', true)
->orderBy('created_at')
->limit(10)
->get();use tommyknocker\pdodb\helpers\Db;
$users = $db->find()
->from('users')
->where('age', 18, '>')
->where('active', 1)
->orderBy('created_at')
->limit(10)
->get();$connection = DriverManager::getConnection([
'driver' => 'pdo_mysql',
'host' => 'localhost',
'dbname' => 'test',
'user' => 'user',
'password' => 'pass'
]);
$users = $connection->fetchAllAssociative(
'SELECT * FROM users WHERE age > ?',
[18]
);use tommyknocker\pdodb\PdoDb;
$db = new PdoDb('mysql', [
'host' => 'localhost',
'dbname' => 'test',
'username' => 'user',
'password' => 'pass'
]);
$users = $db->find()
->from('users')
->where('age', 18, '>')
->get();use yii\db\ActiveRecord;
class User extends ActiveRecord
{
public static function tableName()
{
return 'users';
}
}
// Query using ActiveRecord
$users = User::find()
->where(['>', 'age', 18])
->andWhere(['active' => 1])
->orderBy('created_at DESC')
->limit(10)
->all();use tommyknocker\pdodb\PdoDb;
use tommyknocker\pdodb\helpers\Db;
$db = new PdoDb('mysql', [
'host' => 'localhost',
'dbname' => 'test',
'username' => 'user',
'password' => 'pass'
]);
$users = $db->find()
->from('users')
->where('age', 18, '>')
->where('active', 1)
->orderBy('created_at', 'DESC')
->limit(10)
->get();use Yii;
$users = (new \yii\db\Query())
->from('users')
->where(['>', 'age', 18])
->andWhere(['active' => 1])
->orderBy('created_at DESC')
->limit(10)
->all(Yii::$app->db);use tommyknocker\pdodb\PdoDb;
$users = $db->find()
->from('users')
->where('age', 18, '>')
->where('active', 1)
->orderBy('created_at', 'DESC')
->limit(10)
->get();// PDOdb uses simple array config
$db = new PdoDb('mysql', [
'host' => 'localhost',
'dbname' => 'test',
'username' => 'user',
'password' => 'pass'
]);// Fluent API
$users = $db->find()
->from('users')
->where('age', 18, '>')
->orderBy('created_at')
->get();// Automatic binding
$users = $db->find()
->from('users')
->where('email', $email)
->get();
// Manual binding
$users = $db->find()
->from('users')
->where('email', Db::raw('?'))
->bind($email)
->get();- Installation - Install PDOdb
- Configuration - Configure database
- Common Patterns - Common patterns