Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] PHP OO Ejecutar métodos en cascada usando el mismo Objeto

Estas en el tema de Ejecutar métodos en cascada usando el mismo Objeto en el foro de PHP en Foros del Web. Muy buenas tardes comunidad quisiera saber si se puede hacer eso, bueno si se puede hacer por que ya vi que lo hagan pero no ...
  #1 (permalink)  
Antiguo 24/04/2014, 12:39
 
Fecha de Ingreso: abril-2010
Ubicación: Cancun
Mensajes: 88
Antigüedad: 14 años, 8 meses
Puntos: 2
Pregunta Ejecutar métodos en cascada usando el mismo Objeto

Muy buenas tardes comunidad quisiera saber si se puede hacer eso, bueno si se puede hacer por que ya vi que lo hagan pero no se como realizarlo

Código PHP:
    $obj = new Person;
    
$obj->setNombre('Juan Perez')->save(); 
¿Como realizarlo?
  #2 (permalink)  
Antiguo 24/04/2014, 12:49
Avatar de abimex
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: ~
Mensajes: 751
Antigüedad: 17 años, 9 meses
Puntos: 137
Respuesta: Ejecutar métodos en cascada usando el mismo Objeto

necesitas regresar la referencia al objeto en tus metodos, por ejemplo

Código PHP:
Ver original
  1. public function setNombre($nombre)
  2. {
  3.     $this->nombre = $nombre;
  4.     return $this;
  5. }
__________________
>> abimaelmartell.com
  #3 (permalink)  
Antiguo 24/04/2014, 12:56
 
Fecha de Ingreso: abril-2010
Ubicación: Cancun
Mensajes: 88
Antigüedad: 14 años, 8 meses
Puntos: 2
Respuesta: Ejecutar métodos en cascada usando el mismo Objeto

Cita:
Iniciado por abimex Ver Mensaje
necesitas regresar la referencia al objeto en tus metodos, por ejemplo

Código PHP:
Ver original
  1. public function setNombre($nombre)
  2. {
  3.     $this->nombre = $nombre;
  4.     return $this;
  5. }
Muchas gracias exactamente eso es lo que buscaba ya iba a publicar la solución que encontré y es exactamente la misma

Etiquetas: cadena, metodos, objetos, orientado, phpoo
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 23:45.