2016-03-19 14 views
0

Çalışmakta olan aşağıdaki kod var, ancak bu teknik için daha iyi bir yaklaşımın nasıl olacağını merak ediyorum. Her sorgu için yeni örnekler oluşturmak yerine bağlantıları yeniden kullanmaya başlamak istiyorum. Koduma herhangi bir pratik tavsiye ve çözüm var mı?Her bir istek için yeni örnekler oluşturmak yerine DB bağlantısını yeniden kullan

<?php 
class dbc { 
    function openDb() { 

     $dbserver = ''; 
     $dbusername = ''; 
     $dbpassword = ''; 
     $dbname = ''; 

     try { 
      $db = new PDO('mysql:host=' . $dbserver . ';port=3306;dbname=' . $dbname . ';charset=utf8', '' . $dbusername . '', '' . $dbpassword . '', array(PDO::MYSQL_ATTR_INIT_COMMAND =>"SET SESSION time_zone = 'America/Chicago'")); 
      $timezone = "America/Chicago"; 
      $db->exec("SET time_zone = '{$timezone}'"); 

     } catch (PDOException $e) { 
      print "Error!: " . $e->getMessage() . "<br/>"; 
      die("error, please try again"); 
     } 
     return $db; 
    } 
} 

<?php  
require 'dbc.php'; 

function getDailyProfitability() { 
    $db = new dbc(); 
    $query = "SELECT 1 FROM DUAL"; 
    $stmt = $db->openDb()->prepare($query); 
    $stmt->execute(); 
    return $stmt->fetchAll(); 
}  
?> 

cevap

1

bu aradığınız ama senin veritabanı bağlantısı depolamak için statik bir değişken kullanmak bahsediyor this makale buldum tam olarak ne emin değilim.

İlgili konular