register_shutdown_function
(PHP 4, PHP 5)
register_shutdown_function — Enregistre une fonction pour ex�cution � l'extinction
Description
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
- auto_append_file
- exit() - Affiche un message et termine le script courant
- La section sur la gestion des connexions