register_shutdown_function

(PHP 4, PHP 5)

register_shutdown_functionEnregistre une fonction pour ex�cution � l'extinction

Description

void register_shutdown_function ( callback $function [, mixed $parameter [, mixed $... ]] )

register_shutdown_function() enregistre la fonction function pour ex�cution � l'extinction.

Plusieurs appels � register_shutdown_function() sont possibles dans le m�me script, et les fonctions seront appel�es dans le m�me ordre que celui dans lequel elles sont enregistr�es. Si vous appelez exit() durant l'une des fonctions d'extinction, le processus sera d�finitivement arr�t�, sans que les autres fonctions soient appel�es.

Liste de param�tres

function

La fonction � enregistrer, pour ex�cution � l'extinction.

Une fonction d'extinction est appel�e dans le traitement d'une requ�te, ce qui fait qu'il est possible d'envoyer des messages depuis ces fonctions. Il n'y a actuellement aucun moyen de traiter les donn�es avec les fonctions de bufferisation dans la fonction d'extinction.

Les fonctions d'extinction sont appel�es apr�s avoir ferm� tous les buffers, et, par exepmle, le contenu ne sera pas compress� si zlib.output_compression a �t� activ�.

parameter

Il est possible de passer des param�tres aux fonctions d'extinction en configurant ces param�tres suppl�mentaires.

...

Valeurs de retour

Aucune valeur n'est retourn�e.

Historique

Version Description
4.1.0 Les fonctions d'extinction font maintenant partie de la requ�te. Dans les versions pr�c�dentes, et sous Apache, les fonctions enregistr�es �taient appel�e une fois que la requ�te �tait compl�tement termin�e. (y compris lorsque les buffers ont �t� vid�s) ce qui fait qu'il n'�tait pas possible d'envoyer de contenu au navigateur avec echo() ou print(), ou encore lire le contenu avec les fonctions ob_get_contents(). Les en-t�tes �taient �galement toujours envoy�s.
4.0.0 Ajout du support des param�tres suppl�mentaires.

Exemples

Exemple #1 Exemple avec register_shutdown_function()

<?php
function shutdown()
{
        
// Voici notre fonction shutdown
        // dans laquelle nous pouvons faire
        // toutes les derni�res op�rations
        // avant la fin du script.

        
echo 'Script ex�cut� avec succ�s'PHP_EOL;
}

register_shutdown_function('shutdown');
?>

Notes

Note: Typiquement, les fonctions non d�finies causent des erreurs fatales en PHP, mais lorsque la fonction function est appel�e avec register_shutdown_function() en �tant non d�finie, une erreur de type E_WARNING est g�n�r�e. De plus, pour des raisons internes � PHP cette erreur va être indiqu�e comme Unknown at line #0.

Note: Le dossier de travail du script peut changer dans la fonction d'extinction sous quelques serveurs web, e.g. Apache.

Voir aussi