12.07.2015 Views

Tesis Sistema de Seguimiento de Proyectos de Construcción y ...

Tesis Sistema de Seguimiento de Proyectos de Construcción y ...

Tesis Sistema de Seguimiento de Proyectos de Construcción y ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

primero. Con el nuevo mo<strong>de</strong>lo <strong>de</strong> objetos <strong>de</strong> PHP 5, al hacer un $objeto2 = $objeto1;ya no estamos copiando un objeto, sino creando una nueva referencia al mismo, porlo que es necesario un mecanismo para copiar objetos, sin tener que llamar aloperador new. Aquí es dón<strong>de</strong> entra en juego, el método __clone().classClonable{public $variable;function __construct(){$this->variable = 'Variable Clonada';}}$objeto1 = new Clonable();$objeto2 = $objeto1->__clone();El método __clone() pue<strong>de</strong> ser sobre escrito para hacer lo que el usuario <strong>de</strong>see, y<strong>de</strong> esta manera, se pue<strong>de</strong> controlar mejor el clonado <strong>de</strong> objetos:classClonable{static $id = 0;public $nombre;public $apellidos;function __construct(){$thisid = self::$id++;}function __clone(){$thisnombre = $thatnombre;$thisapellidos = $thatapellidos;$thisid = self::$id++;47

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!