Ver Mensaje Individual
  #11 (permalink)  
Antiguo 19/07/2011, 11:34
Avatar de masterpuppet
masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Singleton: implementacion

Si bien la idea es que haya una única instancia de una clase, el esqueleto del singleton es siempre el mismo, y puede ser una opción extender de una clase base a otras que quieras que sean Singleton's, esto dentro de la teoria, como dije antes no me agrada Signleton, solo que para lograrlo vas a depender de la versión de PHP, Late Static Binding esta disponible recien a partir de PHP 5.3+, y hay que hacer unos ajustes, algo asi:

Código PHP:
Ver original
  1. class Singleton
  2. {
  3.     protected static $_instance = null;
  4.  
  5.     private function __construct()
  6.     {}
  7.  
  8.     public static function getInstance()
  9.     {
  10.         if (null === static::$_instance) {
  11.             static::$_instance = new static;
  12.         }
  13.         return static::$_instance;
  14.     }
  15.  
  16.     private function __clone()
  17.     {}
  18. }
  19.  
  20. class SimpleSingleton extends Singleton
  21. {
  22.     protected static $_instance = null;
  23. }

Con respecto a la sintaxis, yo no veo nada extraño, a que le dices "horrible" ?
__________________
http://es.phptherightway.com/
thats us riders :)