シングルトン パターンを使用して接続を永続化できます...
class DB {
private $_conn = null;
// Make private to prevent direct object creation
private function __construct($config) {
$this->_conn = new PDO("mysql:host=".$config["host"].";port=".$config["port"].";dbname=".$config["dbname"], $config["user"], $config["password"]);
}
public static function connect($config) {
static $_instance = null;
if($_instance == null){
$_instance = new DB($config);
}
return $_instance;
}
public function query ($res) {
$query = $this->_conn->prepare($res);
$query->execute();
return $query;
}
}
次のように使用して、PDO 接続を作成するか、既存の PDO 接続を取得できます。
$db = DB::connect($config);
$res = $db->query("SELECT * FROM table");