Maison  >  Article  >  développement back-end  >  Comment implémenter PHP pour fermer la page tout en l'exécutant

Comment implémenter PHP pour fermer la page tout en l'exécutant

藏色散人
藏色散人original
2020-08-06 09:42:392738parcourir

En PHP, vous pouvez utiliser la fonction "ignore_user_abort" pour implémenter la fonction de fermeture de la page et continuer à l'exécuter. La syntaxe est "ignore_user_abort(true);", ce qui signifie que le script PHP peut continuer à. s'exécuter même si le client est déconnecté.

Comment implémenter PHP pour fermer la page tout en l'exécutant

Recommandé : "Tutoriel vidéo PHP"

Fonction de tâche planifiée PHP qui continue de s'exécuter après la fermeture du navigateur

Nom de la fonction : ignore_user_abort

Cette fonction configure ou obtient si le programme PHP continuera à s'exécuter après l'interruption de la connexion client. La valeur par défaut est d'arrêter l'exécution après la déconnexion. L'option ignore_user_abort dans le fichier de configuration PHP (php3.ini/php.ini) est l'emplacement de configuration. Cette fonctionnalité n'est disponible qu'après la version PHP 3.0.7.

Description officielle : http://cn2.php.net/manual/en/function.ignore-user-abort.php

Utilisation :

Le code est tel suit :

ignore_user_abort(true); //即使Client断开(如关掉浏览器),PHP脚本也可以继续执行.

De cette façon, l'effet de tâche planifiée peut être obtenu. Cependant, le client doit toujours accéder au programme

Par exemple, lors de la génération de pages statiques et de la collecte de données. il n'est pas nécessaire d'attendre. Fermez le navigateur.

Exemple :

Le code est le suivant :

//test
set_time_limit(0);
ignore_user_abort(true);
$i = 0 ;
while($i ++ < 200){
file_put_contents($i.&#39;.php&#39; , $i);
sleep(3);
}

Utilisez la fonction ignore_user_abort pour implémenter les tâches planifiées PHP

Le code est le suivant :

<?php
ignore_user_abort(true);
set_time_limit(0);
while(1) {
  $fp = fopen(&#39;time_task.txt&#39;,"a+");
  $str = date("Y-m-d h:i:s")."\n\r";
  fwrite($fp,$str);
  fclose($fp);
  sleep(5); //半小时执行一次
}
?>

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