Foros del Web » Programando para Internet » PHP »

PHP OO ¿Cómo acceder a una propiedad de una clase?

Estas en el tema de ¿Cómo acceder a una propiedad de una clase? en el foro de PHP en Foros del Web. Código PHP: class  prueba  {     private  $propiedad ;          public function  __construct ( $propiedad ) {          $this -> $propiedad  =  $propiedad ;     }          public function  getPropiedad ...
  #1 (permalink)  
Antiguo 22/12/2010, 14:48
 
Fecha de Ingreso: diciembre-2010
Mensajes: 3
Antigüedad: 13 años, 4 meses
Puntos: 0
¿Cómo acceder a una propiedad de una clase?

Código PHP:
class prueba {

    private 
$propiedad;
    
    public function 
__construct($propiedad) {
        
$this->$propiedad $propiedad;
    }
    
    public function 
getPropiedad(){
        return 
$propiedad;
    }
}

$p = new prueba(5);
echo 
$p->getPropiedad(); 
Hola, intento acceder a una propiedad de una clase y no me muestra nada por pantalla, os dejo el código arriba. Por si sirve de algo estoy utilizando Eclipse PDT. Gracias.
  #2 (permalink)  
Antiguo 22/12/2010, 14:50
 
Fecha de Ingreso: diciembre-2010
Mensajes: 788
Antigüedad: 13 años, 4 meses
Puntos: 51
Respuesta: ¿Cómo acceder a una propiedad de una clase?

Y así?

Código PHP:
class prueba {

    private 
$propiedad;
    
    public function 
__construct($prop) {
        
$this->$propiedad $prop;
    }
    
    public function 
getPropiedad(){
        return 
$this->propiedad;
    }
}

$p = new prueba(5);
echo 
$p->getPropiedad(); 
  #3 (permalink)  
Antiguo 22/12/2010, 15:10
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: ¿Cómo acceder a una propiedad de una clase?

Esta línea:
Código PHP:
Ver original
  1. $this->$propiedad = $propiedad;
Debería ser:
Código PHP:
Ver original
  1. $this->propiedad = $propiedad;
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #4 (permalink)  
Antiguo 22/12/2010, 15:13
 
Fecha de Ingreso: diciembre-2010
Mensajes: 788
Antigüedad: 13 años, 4 meses
Puntos: 51
Respuesta: ¿Cómo acceder a una propiedad de una clase?

Cita:
Iniciado por David Ver Mensaje
Esta línea:
Código PHP:
Ver original
  1. $this->$propiedad = $propiedad;
Debería ser:
Código PHP:
Ver original
  1. $this->propiedad = $propiedad;
Cierto, aunque usar el mismo nombre de variable para la propiedad de la clase y parámetro del constructor, no creo que sea bueno ( además de esto )
  #5 (permalink)  
Antiguo 22/12/2010, 15:44
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: ¿Cómo acceder a una propiedad de una clase?

Cita:
Iniciado por walterdevel Ver Mensaje
Cierto, aunque usar el mismo nombre de variable para la propiedad de la clase y parámetro del constructor, no creo que sea bueno ( además de esto )
por que lo dices ?
__________________
More about me...
~ @rhyudek1
~ Github
  #6 (permalink)  
Antiguo 22/12/2010, 15:54
 
Fecha de Ingreso: diciembre-2010
Mensajes: 3
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: ¿Cómo acceder a una propiedad de una clase?

Perdonad chicos, lo de la linea
Código PHP:
$this->$propiedad $propiedad
fue un error tipográfico, realmente con la nueva línea

Código PHP:
$this->propiedad $propiedad
tampoco muestra nada.

Cambiando el nombre del parámetro tampoco funciona. Alguna idea mas? Gracias a todos.
  #7 (permalink)  
Antiguo 22/12/2010, 16:01
 
Fecha de Ingreso: diciembre-2010
Mensajes: 788
Antigüedad: 13 años, 4 meses
Puntos: 51
Respuesta: ¿Cómo acceder a una propiedad de una clase?

Cita:
Iniciado por jbn1981 Ver Mensaje
Perdonad chicos, lo de la linea
Código PHP:
$this->$propiedad $propiedad
fue un error tipográfico, realmente con la nueva línea

Código PHP:
$this->propiedad $propiedad
tampoco muestra nada.

Cambiando el nombre del parámetro tampoco funciona. Alguna idea mas? Gracias a todos.
Te habrá faltado esto, como te indiqué

Código PHP:
    public function getPropiedad(){
        return 
$this->propiedad;
    } 
  #8 (permalink)  
Antiguo 22/12/2010, 16:02
 
Fecha de Ingreso: diciembre-2010
Mensajes: 788
Antigüedad: 13 años, 4 meses
Puntos: 51
Respuesta: ¿Cómo acceder a una propiedad de una clase?

Cita:
Iniciado por Hidek1 Ver Mensaje
por que lo dices ?
Por nada, tienes razón, lo probé y da lo mismo
  #9 (permalink)  
Antiguo 22/12/2010, 17:12
 
Fecha de Ingreso: diciembre-2010
Ubicación: valencia
Mensajes: 203
Antigüedad: 13 años, 4 meses
Puntos: 11
Respuesta: ¿Cómo acceder a una propiedad de una clase?

como te han dicho funciona bien, da el valor de la propiedad.

respecto al otro tema, de las variables y demas . los argumentos de una funcion solo estan disponibles en el contexto de esa funcion, si existiese incluso una variable global la variable de dicha funcion enmascara a la global.
  #10 (permalink)  
Antiguo 22/12/2010, 17:30
 
Fecha de Ingreso: diciembre-2010
Mensajes: 3
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: ¿Cómo acceder a una propiedad de una clase?

Llevas razón waterdevel, es que como ví que le cambiabas el nombre al parámetro del constructor, pensaba que tu única modificación era esa y no presté atención al cambio en el método getPropiedad(). Pues duda resuelta, muchas gracias a todos por contestar y feliz navidad!

Etiquetas: acceder, clase, propiedad
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:25.