Maison  >  Article  >  développement back-end  >  Comment gérer l'erreur « Durée d'exécution maximale dépassée » en PHP ?

Comment gérer l'erreur « Durée d'exécution maximale dépassée » en PHP ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-04 01:10:29363parcourir

How to Handle the

Gestion de l'erreur de dépassement du temps d'exécution maximum en PHP

Lorsqu'un script PHP dépasse son temps d'exécution maximum autorisé, il se termine par une erreur fatale. Même si l’augmentation du délai d’exécution est une solution courante, elle n’est pas toujours pratique. Cet article explore une approche alternative pour détecter cette erreur et atténuer son impact sur l'expérience utilisateur.

Détection et gestion des erreurs

PHP offre un moyen de détecter les erreurs fatales en enregistrer une fonction d'arrêt. Cette fonction s'exécute une fois le script terminé ou lorsqu'une erreur fatale se produit. Voici un exemple :

<code class="php">function shutdown() {
    $error = error_get_last();

    if ($error) {
        // Handle the error as per application logic
        // or report it to an error log
        ...
    }
}

register_shutdown_function('shutdown');</code>

Avec cette fonction d'arrêt en place, nous pouvons détecter l'erreur de dépassement du temps d'exécution maximum.

Modification du code

Pour simuler l'erreur, nous pouvons ajuster le paramètre max_execution_time et retarder intentionnellement l'exécution du script :

<code class="php">ini_set('max_execution_time', 1);
sleep(3);</code>

Sortie attendue

Lorsque le script s'exécute, il rencontrera le Erreur fatale et déclencher la fonction d'arrêt. Les détails de l'erreur peuvent ensuite être capturés et traités en conséquence.

Ressources supplémentaires

Pour plus de conseils sur la gestion des erreurs en PHP :

  • [ Manuel de gestion des erreurs PHP](https://www.php.net/manual/en/errorrfunc.php)
  • [Enregistrer la fonction d'arrêt](https://www.php.net/manual/en/ function.register-shutdown-function.php)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn