8.41 Fonctions
8 Référence des fonctions
Manuel PHP
. Introduction . Pré-requis . Installation . Configuration à l'exécution . Constantes pré-définies . call_user_func_array . call_user_func . create_function . func_get_arg . func_get_args . func_num_args . function_exists . get_defined_functions ->register_shutdown_function . register_tick_function . unregister_tick_function
|
8.41.14 register_shutdown_function()
Enregistre une fonction pour exécution à l'extinction
[ Exemples avec register_shutdown_function ] PHP 3 >= 3.0.4, PHP 4, PHP 5
void
register_shutdown_function (
callback
function
,
mixed
parameter
,
mixed
...
)
register_shutdown_function
enregistre la fonction
func
pour exécution à l'extinction
du script.
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.
En PHP 4.0.6 et précédent sous Apache, les fonctions d'extinction
sont appelées après la fin de la requête
(notamment les buffers ont été vidés), ce qui fait qu'il est impossible
d'afficher du texte depuis cette fonction, avec
echo
ou
print
, ou encore de lire le contenu des buffers
avec
ob_get_contents
.
Depuis PHP 4.1, les fonctions d'extinction sont appelées comme une partie
de la requête, donc, il est possible d'envoyer l'affichage depuis ces dernières.
Il n'y a actuellement aucune façon de traiter les données avec les fonctions
d'affichage du buffer dans la fonction d'extinction.
La fonction d'extinction est appelé après avoir fermée tous les buffers de sortie ouverts,
de ce fait, par exemple, la sortie ne sera pas compressée si zlib.output_compression est
activé.
Depuis PHP 4, il est possible de passer des paramètres à la fonction d'extinction en
passant des paramètres additionnels à la fonction
register_shutdown_function
.
| 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.
|
| Note | |
La fonction d'extinction est appelé durant l'arrêt du script, donc, les en-têtes
sont toujours déjà envoyés.
|
Voir aussi
auto_append_file ,
exit
, et la section sur la
gestion des connexions .
|