Foros del Web » Programando para Internet » PHP »

acceder a propiedad de clase constructora

Estas en el tema de acceder a propiedad de clase constructora en el foro de PHP en Foros del Web. Buenos días. Mi duda es la siguiente. teniendo lo siguiente. class a{ var $variableA; $clas2=new b(); } class b(){ $x=??????->variableA; } Puedo acceder a la ...
  #1 (permalink)  
Antiguo 28/04/2020, 10:11
Avatar de oscartt67  
Fecha de Ingreso: abril-2012
Ubicación: fonollosa
Mensajes: 479
Antigüedad: 8 años, 1 mes
Puntos: 97
acceder a propiedad de clase constructora

Buenos días.
Mi duda es la siguiente. teniendo lo siguiente.
class a{
var $variableA;
$clas2=new b();
}


class b(){
$x=??????->variableA;
}

Puedo acceder a la variable a->variableA, (clase creadora) desde la clase b?
Extender a sobre b no me sirve.
Gracias de antemano!
  #2 (permalink)  
Antiguo 28/04/2020, 11:33
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.065
Antigüedad: 11 años, 9 meses
Puntos: 2215
Respuesta: acceder a propiedad de clase constructora

Sí puedes, solo necesitas tener la instancia de clase a disponible en la clase b, ejemplos:

Código PHP:
Ver original
  1. class a {
  2.     public $variableA;
  3.     public function __construct() {
  4.         $this->variableA = 'Cualquier valor';
  5.     }
  6. }
  7.  
  8. // Instanciando directamente
  9. class b {
  10.     public function __construct() {
  11.         $a = new a();
  12.         echo $a->variableA;
  13.     }
  14. }
  15.  
  16.  
  17. // Recibiendo como parámetro
  18. class b {
  19.     public function __construct($a) {
  20.         echo $a->variableA;
  21.     }
  22. }
  23.  
  24. $a = new a();
  25. $b = new b($a);
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 28/04/2020, 12:48
Avatar de oscartt67  
Fecha de Ingreso: abril-2012
Ubicación: fonollosa
Mensajes: 479
Antigüedad: 8 años, 1 mes
Puntos: 97
Respuesta: acceder a propiedad de clase constructora

Gracias por tu respuesta Triby. De echo, ahora lo tengo tal y como propones, pero pensaba que igual hay alguna sintaxis específica para acceder al constructor sin tener que usar paso de parámetros.
Un saludo!



La zona horaria es GMT -6. Ahora son las 12:41.