Maison > développement back-end > tutoriel php > Comment puis-je exécuter des scripts PHP de longue durée en arrière-plan après la soumission du formulaire ?

Comment puis-je exécuter des scripts PHP de longue durée en arrière-plan après la soumission du formulaire ?

Mary-Kate Olsen
Libérer: 2024-12-01 15:26:14
original
313 Les gens l'ont consulté

How Can I Run Long-Running PHP Scripts in the Background After Form Submission?

Exécution en arrière-plan de scripts PHP après la soumission du formulaire

Introduction

Lors de la soumission de formulaires qui déclenchent tâches de traitement longues, il est important d'éviter l'insatisfaction des utilisateurs en raison de commentaires retardés ou d'interruptions potentielles du script. Pour résoudre ce problème, cet article explique comment exécuter des scripts PHP en arrière-plan, indépendamment des interactions de l'utilisateur.

Exécution de script en arrière-plan

Pour exécuter un script PHP en tant que service d’arrière-plan, l’exploitation des commandes shell est une solution efficace. L'utilisation de shell_exec permet la journalisation des processus de notification. La commande suivante lance le script de courrier électronique :

shell_exec("/path/to/php /path/to/send_notifications.php '".$post_id."' 'alert' >> /path/to/alert_log/paging.log &");
Copier après la connexion

Avantages de l'exécution en arrière-plan

  • Empêche la frustration des utilisateurs due à des soumissions de formulaires retardées
  • Supprime la nécessité de désactiver des boutons ou de remplacer du texte, ce qui peut être gênant
  • Élimine le blocage du navigateur problèmes causés par des onglets fermés prématurément

Considérations supplémentaires

  • L'esperluette (&) à la fin de la commande garantit que le script s'exécute en arrière-plan
  • Des variables supplémentaires peuvent être transmises en tant que paramètres $_SERVER['argv']
  • Sortie du script de courrier électronique est enregistré dans un fichier spécifié, indiquant le succès ou l'échec de l'envoi des notifications

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal