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

Holas. Los asalto con una duda sobre un codigo que encontre por ahi.

Código:
<?php

class Customer
{
    public $name;
    private $data = array();
    
    public function __set($dt, $vl)
    {
        $this->data[$dt] = $vl;
    }
    
    public function __get($dt)
    {
        return $this->data[$dt];
    }
}

$c = new Customer;
$c->name = "Sunil"; //El nombre es seteado (set) porque es publico
$c->email = "[email protected]"; // Asignando [email protected] en $email

echo $c->email;
?>
Se entiende con esto que el asunto queda como $data[email]="[email protected]"

PERO lo que no entiendo es la ultima linea (echo $c->email;) ya que si borro las funciones "magicas" (__set y __get) me sigue funcionando y dando el mail. O sea, entiendo el porque pero con eso no le veo utilidad a __set y __get.

O tambien si hago publico data y pongo echo $c->data["email"] igual veo la variable y el get pierde sentido.

Alguien tiene un ejemplo sobre como usar bien __get y __set que sea entendible ? o este modificado para ver las propiedades de set y get.

Gracias