2009-08-08 15 views

Respuesta

1

No sé si esto ayuda, pero usted puede hacerlo a la inversa.

definir una función como esta:

function terminate() // you might want to have parameters here to handle different cases 
{ 
    the_function_to_call(); 
    die(); // or exit(); 
} 

A continuación, dentro de su código de llamada terminate() en lugar de die() o exit().

4

El método mágico __destruct() para las clases también se ejecuta al apagar, a menos que primero deshaga el objeto de la clase. Aunque la respuesta de Scharrels es más simple si solo quieres registrar una función normal. Ver http://docs.php.net/manual/en/language.oop5.decon.php#language.oop5.decon.destructor

Una cosa a tener en cuenta cuando se ejecutan scripts en el apagado es que esto sucede después de que la salida se envía al navegador, por lo que no aparecerá ningún error en la pantalla. ¡Asegúrese de recordar registrar los errores en el archivo para las funciones de apagado!

+0

Sé acerca de __destruct() para destruir objetos, pero esto no me ayuda. Tengo una clase para la manipulación de la sesión. La razón por la que no quiero usar __destruct() en el objeto es porque quiero guardar correctamente los datos de la sesión al final y el objeto de la sesión puede destruirse durante el procesamiento del script. Gracias de todos modos;) – usoban

+3

Si esto es para la gestión de datos de sesión, debe mirar session_set_save_handler() - esto tiene su propio sistema, un controlador de escritura, para guardar datos de sesión en el cierre sin la necesidad de registrar funciones de apagado usted mismo. Ver http://php.net/manual/en/function.session-set-save-handler.php – simonrjones

Cuestiones relacionadas