Ver Mensaje Individual
  #6 (permalink)  
Antiguo 16/01/2006, 04:33
Avatar de elangelcaido
elangelcaido
 
Fecha de Ingreso: septiembre-2003
Ubicación: Oviedo
Mensajes: 1.068
Antigüedad: 20 años, 7 meses
Puntos: 4
Referencias de atributos entre clases

Pregunta: ¿Como funcionan las referencias de los atributos entre clases?
Respuesta: El siguiente ejemplo es la actualizacion de un atributo de una clase A a traves de otra clase B.
Código PHP:
class A{
    var 
$vblA=0;
    
    function 
A($num){
        
$this->vblA=$num;
    }
    
    function &
getvbl(){
        
$r=&$this->vblA;
        return 
$r;
    }
    
    function 
setvlb($num){
        
$this->vblA=$num;
    }
}

class 
B{
    var 
$miarray=null;
    
    function 
B(){
        for(
$i=0;$i<5;$i++){
            
$this->miarray[]=new A($i);
        }
    }
    
    function 
prueba($i){
        
$elemento=$this->getElemento($i);
        echo 
'Elemento antes de actualizar: '.$elemento->getvbl().'<br>';
        
$elemento->setvlb(1000);
        echo 
'Elemento despues de actualizar: '.$elemento->getvbl().'<br>';
        echo 
'Comprobacion con array ya actualizado: '.$this->miarray[$i]->getvbl();
    }
    
    function 
getElemento($i){
        
$retorno=null;
        for(
$j=0;$j<count($this->miarray);$j++){
            if(
$i==$j){
                
$retorno=$this->miarray[$j];
            }
        }
        return 
$retorno;
    }
}

$b=new B();
$b->prueba(1); 
__________________
Ta Luego! Al final sólo puede quedar uno...
________
lukos.org