Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/06/2008, 19:21
Avatar de destor77
destor77
 
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 6 meses
Puntos: 43
crear singleton

Estimado amigos, les vengo a molestar una vez mas (y van....) esta vez es sobre el tema sigleton, estoy siguiendo el tutorial que se encuentra en http://www.jourmoly.com.ar/introducc...segunda-parte/

que aplica el patrón singleton para PDO, bien ahora quiero hacer los mismo para usa la instancia de otra clase, pero nose si lo estoy haciendo bien.

Hasta ahora venia usando asi la clase:
Código PHP:
include('PHT.php');
session_start();
$HT=new CHPPConnection('nukestats','/test');
        
        if( 
$HT->connectUser($user,$pass))
        {
              
$_SESSION['HT'] = $HT;
              
              
$team $HT->getTeam();

              echo 
$team->getTeamName().' '.$team->getShortTeamName().' '.$team->getTeamId()."<br/>"
Guiandome por como creo el singleton de PDO en el tutorial yo arme esto, pero dudo que este bien:
Código PHP:
class HT extends CHPPConnection {
        private static 
$instance null;
     
        public function 
__construct() 
        {
            
$HT Config::singleton();
            
$HT = new CHPPConnection('nukestats','/test');
            
parent::__construct($HT->connectUser('destor77','123'));
            
        }
     
        public static function 
singleton() 
        {
            if( 
self::$instance == null 
            {
                
self::$instance = new self();
            }
            return 
self::$instance;
        }
    } 
en la parte que no estoy seguro es en esta:
$HT = new CHPPConnection('nukestats','/test');
parent::__construct($HT->connectUser('destor77','123'));


La idea es la siguiente, para mostrar ciertos datos en mi pagina necesito crear una instancia de CHPPConnection el cual es una clase con un montón de métodos y otras clases. Como estoy implementando MVC y no quiero tener que crear una instancia en cada sección pensé en usar singleton, pero creo que no lo estoy implementando bien.

O me conviene armar una clase abstracta así:
Código PHP:
abstract class HT {
        
        protected 
$ht;
     
        function 
__construct()
        {
            
$this->ht= new CHPPConnection('nukestats','/test');
            
$thi->ht->connectUser('destor77','123');
        }
    } 
si me pueden guiar un poco se los agradecería.

salu2

Última edición por destor77; 13/06/2008 a las 19:32