Tema: Patrones
Ver Mensaje Individual
  #4 (permalink)  
Antiguo 29/08/2007, 14:25
Avatar de GatorV
GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 7 meses
Puntos: 2135
Re: Patrones

La clase esta ahi publicada:
Código PHP:
class DB extends PDO {
    private static 
$_instance null;

    private function 
__construct() {
        
// Obtenemos el Config desde un array, clase config etc:
        
$config Config::getInstance();
        
$db $config->DBName;
        
$user $config->UserName;
        
$pwd $config->Password;
        
        
$attrs = array();
        
$dsn 'mysql:host=localhost;dbname=' $db;
        
        
parent::__construct$dsn$user$pwd$attrs );
        
$this->setAtributePDO::ATTR_ERRMODEPDO::ERR_MODE_EXCEPTION );
    }

    public static function 
getInstance() {
        if( 
self::$_instance == null ) {
            
self::$_instance = new self();
        }
        
        return 
self::$_instance;
    }

Por la naturaleza de PHP el patron Singleton se limita al request actual ya que al terminar la pagina el objeto es destruido y en tu siguiente llamado es creado nuevamente.

Aunque te ayuda el solo tener 1 objeto en todas tus operaciones ya que asi garantizas que estas hablando solo del mismo objeto.

Saludos.