Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Uso del patron Registry

Estas en el tema de Uso del patron Registry en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Amigos, desde hace dias estoy tratando de implementar el patron registry en una aplicacion 3 capas y no me funciona...he copiado el codigo de libros ...
  #1 (permalink)  
Antiguo 07/05/2008, 12:49
 
Fecha de Ingreso: noviembre-2004
Mensajes: 6
Antigüedad: 19 años, 6 meses
Puntos: 0
Uso del patron Registry

Amigos, desde hace dias estoy tratando de implementar el patron registry en una aplicacion 3 capas y no me funciona...he copiado el codigo de libros respetables, y lo he incluido en mi aplicacion y me pasa lo siguiente: cuando acceso a una pagina para realizar alguna accion, puedo acceder al objeto registry y almacenar informacion en el, y en la misma llamada a las clases puedo acceder nuevamente al objeto registry, siempre usando singleton, y sacar la informacion que antes había incluido en el, el problema viene cuando termino de ejecutar esa pagina y quiero saltar mediante un link para otra pagina, y es que ahi se me pierde toda la informacion almacenada en el objeto pues al parecer el singleton lo que me devuelve es un objeto nuevo, o sea que el static no me funciona, pues puse static la clase, los metodos, el array, implementé el método getinstance para el singleton, y nada de nada....

asi que si alguien lo ha implementado, no importa que sea en MVC, y me puede ayudar se lo agradecería, aunque si me lo pueden explicar en 3 capas o darme las explicaciones de por que no se puede igual me interesa la informacion.

Saludos a todos.
  #2 (permalink)  
Antiguo 07/05/2008, 13:15
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Uso del patron Registry

Hola IsildurMaC,

Tu problema viene en el entendimiento general de PHP, PHP es un lenguaje de una instancia, es decir:

Cliente pide pagina.php -> Servidor ejecuta pagina.php -> PHP se inicia, ejecuta y compila pagina.php -> PHP limpia los recursos usados por pagina.php -> PHP le informa a Servidor que ha terminado -> Servidor envía resultado a cliente.

Si ves ese diagrama es muy basico, el como funciona PHP.

Cuando tu usas una variable static con PHP, esa variable static solo es valida durante el proceso actual, es decir cuando se esta ejecutando, al terminar la variable es limpiada automáticamente.

Lo que tu necesitas hacer es si deseas que esos resultados se puedan pasar a las demas instancias de tu pagina, es usar variables de sesión, con estas podrás guardar la información de tu instancia y recuperarlas en una página posterior.

Saludos.
  #3 (permalink)  
Antiguo 08/05/2008, 09:12
Avatar de enriqueplace  
Fecha de Ingreso: mayo-2005
Ubicación: Uruguay / Argentina
Mensajes: 1.102
Antigüedad: 19 años
Puntos: 32
Re: Uso del patron Registry

Estimado, te olvidas del "stateless" del ambiente web: todo lo que haces dura lo que dura la ejecución de una página, luego que el servidor te "sirve" lo que pides, se "olvida" de ti

La única forma que funcione lo que intentas hacer es "persistiendo" esa información, o a través de sesiones o un simil que podría ser guardarndo la info en una tabla y luego recuperándola desde otra página.

Hay tecnologías que te resuelven este tema, como en J2EE o .Net, pero se debe a que han implementado algo de esto (persistencia), este comportamiento es el estándar de la web, así está especificado que deben funcionar los servidores web.
__________________
Blog phpsenior.com Cursos a Distancia surforce.com
  #4 (permalink)  
Antiguo 10/05/2008, 10:26
 
Fecha de Ingreso: noviembre-2004
Mensajes: 6
Antigüedad: 19 años, 6 meses
Puntos: 0
Re: Uso del patron Registry

OK amigos, gracias por la respuesta. hasta que no me tope con el libro sobre patrones de diseño en PHP, de la revista php|architect, y este sitio: http://www.phppatterns.com/docs/design/the_registry en mi cabeza estaba la explicacion que me dió GatorV, luego de leerlos me dieron a entender otra cosa, que me servia para toda la aplicacion, pues en ningun momento dicen lo contrario, tal vez porque sea arto evidente, y medio bruto yo ....

saludos.
  #5 (permalink)  
Antiguo 13/05/2008, 13:02
Avatar de webseficientes  
Fecha de Ingreso: enero-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 320
Antigüedad: 19 años, 3 meses
Puntos: 14
Re: Uso del patron Registry

Hola! al que le interese saber un poco más sobre el patron Registry, y otros patrones, aplicados a Php, este sitio tiene buena info y ejemplos http://www.patternsforphp.com/wiki/Registry
__________________
Gerardo Benitez
Programador Web Freelance, SEO, Diseño web
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:43.