Mini Shell
<?php
require_once 'Configuration.php';
abstract class Model {
private static $db; // Static db PDO object (shared)
// Execute SQL query
protected function runQuery($sql, $params = null) {
if ($params == null) {
$result = self::getdb()->query($sql); // exécution directe
}
else {
$result = self::getdb()->prepare($sql); // requête préparée
$result->execute($params);
}
return $result;
}
// Return db PDO connection object
private static function getdb() {
if (self::$db === null) {
$dsn = Configuration::get("dsn");
$login = Configuration::get("login");
$passwd = Configuration::get("passwd");
// Création de la connexion
self::$db = new PDO($dsn, $login, $passwd,
array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
}
return self::$db;
}
}