Ver Mensaje Individual
  #2 (permalink)  
Antiguo 26/12/2012, 08:32
Avatar de abimaelrc
abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 7 meses
Puntos: 1517
Respuesta: Duda agregacion,metodos magicos,etc

Bueno verificando tienes bastantes errores, pero son cuestión de corregir operadores,
Código PHP:
Ver original
  1. <?php
  2. class Medidas{
  3.     private $alto;
  4.     private $largo;
  5.     public function __construct($alto,$largo)
  6.     {
  7.         $this->alto = $alto;
  8.         $this->largo = $largo;
  9.     }
  10.     public function __set($name, $value)
  11.     {
  12.         switch($name)
  13.         {
  14.             case 'Alto':
  15.                 $this->alto =$value;
  16.                 break;
  17.             case 'Largo':
  18.                 $this->largo=$value;
  19.                 break;
  20.         }
  21.     }
  22. }
  23.  
  24. class Clase1 {
  25.     private $propiedad1;
  26.     private $Medidas;
  27.  
  28.     public function __construct($propiedad1, Medidas $Medidas)
  29.     {
  30.         $this->propiedad1=$propiedad1;
  31.         $this->Medidas = $Medidas;
  32.     }
  33.  
  34.     public function __clone()
  35.     {
  36.         $this->Medidas = clone $this->Medidas;
  37.     }
  38. }
  39.  
  40. class Clase2 extends Clase1{
  41.     private $propiedad2;
  42.  
  43.     public function __construct($propiedad1,$Medidas,$propiedad2)
  44.     {
  45.         parent::__construct($propiedad1,$Medidas);
  46.         $this->propiedad2 = $propiedad2;
  47.     }
  48. }
  49.  
  50. $prueba=new Clase2('hola',new Medidas(20,30),'adios');
  51.  
  52. $clonar = clone $prueba;
  53.  
  54. $clonar->Medidas->Alto=10;
  55. $clonar->Medidas->Largo=20;
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos