Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/07/2011, 06:47
antoniojim
 
Fecha de Ingreso: marzo-2005
Ubicación: Málaga
Mensajes: 115
Antigüedad: 19 años, 10 meses
Puntos: 0
Sesiones y Registro de una clase

Hola a todos, estoy haciendo una clase para guardar una serie de datos en ejecución, en plan carrito de la compra, pero con otra estructura específica.

Quería preguntaros si veis este código bien para utilizar un patrón singleton y registrar la clase.

Código PHP:
<?php

/**
 * Plantillas
 * 
 * @package 
 * @author antoniopmfree
 * @version 1.0
 */
Zend_Loader::loadClass('Zend_Session_Namespace');
class 
Yimgo_Plantillas_Plantillas {
    
/**
     * Singleton instance
     *
     * @var Yimgo_Plantillas_Plantillas
     */
    
protected static $_instance null;

    
/**
     * Singleton pattern implementation makes "new" unavailable
     *
     * @return void
     */
    
protected function __construct()
    {}

    
/**
     * Singleton pattern implementation makes "clone" unavailable
     *
     * @return void
     */
    
protected function __clone()
    {}

    
/**
     * Returns an instance of Yimgo_Plantillas_Plantillas
     *
     * Singleton pattern implementation
     *
     * @return Yimgo_Plantillas_Plantillas
     */

    
public static function getInstance() {
        if (
Zend_Registry::isRegistered("pSession")) {
            
$sessionData=Zend_Registry::get("pSession");
        } else {
            
$sessionData=new Zend_Session_Namespace("pSession");
            
Zend_Registry::set("pSession",$sessionData);
        }
        
        if (isset(
$sessionData->plan) && ($sessionData->plan!==null)) {
            
$planObject=$sessionData->plan;
        } else {
             if (
null === self::$_instance) {
                
self::$_instance = new self();
             }
            
$planObject=self::$_instance;
            
$sessionData->plan=$planObject;
        }
        return 
$planObject;
    }
}

?>