Maison  >  Article  >  développement back-end  >  Méthode d'exécution planifiée PHP

Méthode d'exécution planifiée PHP

墨辰丷
墨辰丷original
2018-06-05 16:53:322412parcourir

Cet article présente principalement la méthode d'exécution planifiée de PHP. Les amis intéressés peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Trois façons d'implémenter l'exécution planifiée PHP

  • 1. Tâches planifiées Windows

  • 2. Script Linux

  • 3. Laissez le navigateur Web s'actualiser régulièrement

Mise en œuvre concrète
1. PHP fonctionne rarement sur des serveurs Win, et l'implémentation spécifique ne sera pas étudiée en détail. Le principe de l'implémentation en ligne est probablement d'écrire un script bat, puis de laisser la tâche window ajouter et exécuter le script bat.

2. Implémentation du script Linux

La commande crontab est principalement utilisée ici
Méthode d'utilisation : Le code est le suivant :

crontab filecrontab [- u utilisateur ] [ -u utilisateur ] { -l | -r | }

Explication :

crontab est utilisé pour autoriser les utilisateurs pour exécuter des programmes à une heure ou à des intervalles fixes

Utilisez crontab pour écrire un script shell, puis laissez PHP appeler le shell. Cela utilise les caractéristiques de Linux et ne doit pas être considéré comme les caractéristiques de PHP. propre langage

3. PHP implémente l'exécution planifiée des tâches planifiées

L'utilisation de PHP pour actualiser le navigateur nécessite de résoudre plusieurs problèmes

Délai d'exécution du script PHP, la valeur par défaut est de 30 min Solution : set_time_limit( ); ou modifier les paramètres PHP.ini max_execution_time time (non recommandé) Si le navigateur client est fermé, le programme peut être forcé de se terminer Solution : ignore_user_abort s'exécutera toujours normalement même si la page est fermée Si le programme est fermé. Le programme continue de s'exécuter, il est susceptible de consommer beaucoup de ressources. Solution La méthode consiste à utiliser sleep pour dormir pendant un moment, puis à exécuter le code de
exécution planifiée PHP :


Lors des tests, nous avons constaté que l’efficacité n’est pas très élevée.

<?php
ignore_user_abort();//关掉浏览器,PHP脚本也可以继续执行.
set_time_limit(3000);// 通过set_time_limit(0)可以让程序无限制的执行下去
$interval=5;// 每隔5s运行
 
//方法1--死循环
do{
  echo &#39;测试&#39;.time().&#39;<br/>&#39;; 
  sleep($interval);// 等待5s  
}while(true);
 
//方法2---sleep 定时执行
  require_once &#39;./curlClass.php&#39;;//引入文件
   
  $curl = new httpCurl();//实例化
  $stime = $curl->getmicrotime();
  for($i=0;$i<=10;$i++){
     
    echo &#39;测试&#39;.time().&#39;<br/>&#39;; 
    sleep($interval);// 等待5s
     
  }
  ob_flush();
  flush();
  $etime = $curl->getmicrotime();
  echo &#39;<hr>&#39;;
  echo round(($etime-stime),4);//程序执行时间

Résumé : Ce qui précède représente l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'étude de chacun.

Recommandations associées :

Explication détaillée des exemples renvoyés par les références des fonctions d'implémentation PHP

Tutoriel d'introduction PHP partage d'exemples de compétences en traitement d'image

Tutoriel d'introduction PHP avec explication détaillée des concepts et exemples de base orientés objet

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