Ver Mensaje Individual
  #26 (permalink)  
Antiguo 09/02/2011, 21:17
GaDo
 
Fecha de Ingreso: enero-2007
Mensajes: 16
Antigüedad: 17 años, 3 meses
Puntos: 0
Respuesta: __get Y __set Necesito una pequeña guia

La unica forma con la que lo pude hacer fue asi:

Código:
class MiClase
{
    private $ejemplo= array();
    public function __set($nombre, $valor)
        {
        
        $this -> ejemplo[$nombre] = $valor;
        }

    public function __get($nombre)
    { 
        return "Ingresa a {$this->ejemplo[$nombre]}";
    }
}
$usuario = new MiClase;

$usuario->website = 'website.com';

echo $usuario -> website;
Como conclusión.

1.- Con Set puedes manipular el valor
2.- Get funciona siempre y cuando se cambie la variable de entrada usada en __set como en este ejemplo.

Pero. ¿Es necesario usar un array (y por ende gastar memoria en una nueva variable) para poder controlar el __get ??. Porque con un return "Ingresa a {$this->nombre}" se supone que deberia funcionar pero por un extraño motivo no lo hace.

Conviene usar estas funciones magicas o conviene crear dos variables publicas (get_esto y set_esto por ejemplo) para hacer estas operaciones?