Destructores en PHP 4

La versión 5 de PHP soporta una gran variedad de operaciones con objetos, entre las cuales existen eventos, manejo de excepciones y una implementación completa de constructores y destructores.

Pero PHP 4, aunque muy completo a mi parecer, carece de la definicion de "destructores" para objetos. Sin embargo nada es imposible, y se utiliza un truco para crear funciones de destrucción:

CODE:
  1. <?php
  2. class ProgramaTV {
  3.   function ProgramaTV(){
  4.     // Este es el constructor de la clase
  5.     echo "mostrar el intro";
  6.     // Registramos acá el destructor
  7.     register_shutdown_function(array( &$this, "__destroy" ));
  8.   }
  9.  
  10.   // Ahora creamos la función de destrucción:
  11.   function __destroy() {
  12.     echo "mostrar los créditos";
  13.   }
  14. }
  15. ?>

Ese código ejecutará la función __destroy() cada vez que el objeto sea descargado de memoria. Sin embargo, esto no funciona del todo cuando se trabaja con herencias.

Ver mas info sobre register_shutdown_function().


2 Respuestas a “Destructores en PHP 4”

  1. 1 gartox

    Muy buen ejemplo, me sirvio para utilizarlo en vez del $__destruct que no me acepta el php y eso que es el 5 que s esupone que ya lo trae, no sé si hay que habilitar alguna cosa en el php.ini

  2. 2 gartox

    alert("vulnerable");

Añade un Comentario





RSS feeds

Suscríbete a nuestros RSS Feeds