Buenas Noches Germana
La instrucción _destruct() se introdujo en PHP 5 y permite ejecutar un
código al momento que:
- Todas las referencias al objeto sean removidas
- El objeto es explicitamente destruido
Un pequeño ejemplo:
Creamos una clase llamada prueba que contiene un "constructor" y un
"destructor"
<?php
class prueba {
// Aqui podemos declara las variables y funciones que utilizaremos
en nuestra clase
function __construct() {
// Esta función se ejecutará en el momento que le "creamos" un
objeto de la clase "prueba"
// todas las instrucciones contenidos en esta función serán ejecutas
automaticamente
echo ("Hola Mundo\n");
}
function __destruct {
// Esta función se ejecutará en el momento que el objeto ya no sea
necesario y sea "eliminado"
// todas las instrucciones se ejecutarán de forma automatica
echo ("Aquí esta ejecutando el destructor de la clase \n");
}
}
// aquí creamos un objeto de la clase prueba
$variable = new prueba; // Aqui creamos un objeto, al hacer esto, la
funcion __construct() se ejecuta
?> aquí tenemos el final de nuestro script y se ejecutará el desturctor
definido en la clase "prueba"
Este código produce el siguiente resultado:
*Hola Mundo
Aquí esta ejecutando el destructor de la clase*
Lo que vemos reflejado es, que al momento de definir un objeto llamado
$variable se ejecuta el codigo que colocamos en la funcion __construct()
y, que al momento de terminar el script, que el objeto $variable es
eliminado del sistema, se ejecuta automáticamente el código de la
función __destruct()
Esto nos permite poder ejecutar alguna acción especial que necesitemos
al momento que el objeto sea eliminado.
Puedes revisar en
http://ve.php.net/language.oop5.deconEspero que te sirva esta pequeña explicación.
Saludos,
Nicolás
---------------------------------------------------------------------------
germana oliveira escribió:
Saludos!!
alguien porfavor, podria explicarme, como si tuviera 5 años, para que me puede
servir un metodo _destruct().
Gracias!!!!
--
Nicolás Tolstow Capdevila
Ram Head Technology, c.a.
Caracas - Venezuela