Ver Mensaje Individual
  #6 (permalink)  
Antiguo 25/10/2007, 09:58
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: ¿que es Singleton?

Es muy simple:
Código PHP:
class Singleton {
       private 
$variable;
       private static 
$_instance null;
       
       private function 
__construct() {
               
$this->variable "inicio";
       }

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

               return 
self::$_instance;
       }

       public function 
setMessage($var) {
              
$this->variable $var;
       }

       public function 
getMessage() {
              return 
$this->variable;
       }

Solo es controlar que exista una instancia del objeto, y es lo que te provee el patron Singleton. Puedes ver como funciona asi:
Código PHP:

$objeto 
Singleton::getInstance();
echo 
$objeto->getMessage(); // Imprime "Inicio"

function algo() {
     
$obj Singleton::getInstance();

     
$obj->setMessage("Cambiado desde dentro de algo!!!");
}

algo();
echo 
$objeto->getMessage(); // Imprime: "Cambiado desde dentro de algo!!!" 
Saludos.