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

duda con clases en php en php4 !

Estas en el tema de duda con clases en php en php4 ! en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Hola buenas, tengo la siguiente duda: He realizado una página en PHP5 con clases y me funciona perfectamente, el código viene a ser algo como: ...
  #1 (permalink)  
Antiguo 21/11/2005, 03:38
 
Fecha de Ingreso: abril-2002
Mensajes: 1.014
Antigüedad: 22 años
Puntos: 8
duda con clases en php en php4 !

Hola buenas, tengo la siguiente duda:

He realizado una página en PHP5 con clases y me funciona perfectamente, el código viene a ser algo como:

Código:
class Expediente {
    
    var $centro;
    ...
    function setCentro($centro)
    {
        $this->centro = $centro;
    }

    function getCentro()
    {
        return $this->centro;
    }
    
}
... y para acceder al centro:

Código:
   
    
    $expe = new Expediente();
    
    // cargo el centro ( que es otro objeto)
    $expe->setCentro( $this->cargarCentro(5) );

Después para mostrarlo en PHP5 me va pefecto lo siguiente

echo $exp->getCentro()->getNombre();

... Pero en php4 tengo que acceder directamente a la variable;

echo $exp->centro->getNombre();

¿Es esto normal o estoy haciendo algo mal?

Gracias !
  #2 (permalink)  
Antiguo 21/11/2005, 06:29
Avatar de Webstudio
Colaborador
 
Fecha de Ingreso: noviembre-2001
Ubicación: 127.0.0.1
Mensajes: 3.499
Antigüedad: 22 años, 5 meses
Puntos: 69
Eso es normal, en PHP4 no se podía desreferenciar objetos (así se llama a lo que intentas hacer). Una manera menos "sucia" de hacerlo sería utilizando una variable temporal y referencias :
Código PHP:
class Expediente {
    
    var 
$centro;
    ...
    function 
setCentro(&$centro)
    {
        
$this->centro =& $centro;
    }

    function &
getCentro()
    {
        return 
$this->centro;
    }
    
}

//Y lo utilizas asi

$centro =& $exp->getCentro();
echo 
$centro->getNombre(); 
Esta sería la manera correcta de lograrlo en PHP4.
Saludos.
__________________
Tutoriales Photoshop | Web-Studio.com.ar
Artículos PHP | ZonaPHP.com
  #3 (permalink)  
Antiguo 21/11/2005, 06:41
 
Fecha de Ingreso: abril-2002
Mensajes: 1.014
Antigüedad: 22 años
Puntos: 8
Muchas gracias
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 20:08.