Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1833 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Executer un script à intervalle de temps régulier sans être gourmand

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Executer un script à intervalle de temps régulier sans être gourmand

n°782668
Sundaz
Posté le 30-06-2004 à 16:57:58  profilanswer
 

Bonjour à tous,
 
Tout d'abord désolé pour le titre du topic, j'ai pas trouvé mieux.
 
Voilà en fait je dois faire un programme qui doit copier des images sur le disque toutes les n secondes ou minutes.
J'ai donc voulu utiliser un algo qui bloque l'execution du script tant que le temps séparant la copie de 2 images ne s'est pas écoulé. En d'autres termes, si je veux recopier des images sur le disque toutes les n minutes, je recopie une image, puis je reste coincé dans un while n minutes, puis je recopie une autre image etc ...
Le problème est que cet algo est très très très gourmand. C'est simple, l'utilisation du PC en devient presque impossible.
J'ai essayé le même système d'attente avec du javascript et j'en suis arrivé au même résultat.
J'aurai donc voulu savoir si il n'existait pas un autre moyen de déclencher des scripts php à intervalle de temps régulier mais qui cette fois ne serait pas trop gourmand.
L'idéal serait l'équivalent du sleep c++ car j'ai testé le sleep() php et c'est uniquement quand il a finit d'attendre toutes ces n minutes qu'il copie tout d'un coup.
 
Merci d'avance :) , voici ma petite fonction d'attente :
 
                set_time_limit(0);  
 
 
     $copie=false;
     $then=time();
    $now=$then;
     
 
     while( ($now-$then)<=$delai )
     {
              $now=time();
             if(($now-$then)==$delai)
                 $copie=true;
         }


Message édité par Sundaz le 30-06-2004 à 17:00:31
mood
Publicité
Posté le 30-06-2004 à 16:57:58  profilanswer
 

n°782815
Ex-Floodeu​r
La Source
Posté le 30-06-2004 à 19:39:33  profilanswer
 

www.webcron.org peut être  [:sinclaire]


Message édité par Ex-Floodeur le 30-06-2004 à 19:39:46

---------------
Saint Seiya  || La Livebox || Europe, débats, réflexions
n°782838
jagstang
Pa Capona ಠ_ಠ
Posté le 30-06-2004 à 19:52:15  profilanswer
 

php n'est pas fait pour ça....
 
mais bon, crontab ou webcron pourront t'aider


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°783212
Sundaz
Posté le 01-07-2004 à 10:01:04  profilanswer
 

Ok, merci pour vos réponses. J'avais déjà entendu parler de ces solutions mais je pensais pouvoir m'en sortir sans. J'étudierai celà plus en détail.
 
Par contre, j'ai dis une bêtise dans mon premier post au sujet du sleep php.
En effet, si, dans la même page, je copie une image, puis sleep(n), puis copie etc... je vais bien avoir mes copies ordonnées dans le temps.
Donc jusqu'ici ça répond parfaitement à ce que je dois faire. Mais un nouveau problème s'ajoute car en fait, la copie se fait après qu'un formulaire ait été soumis.
Donc je fais form.submit() qui déclenche la copie via la page de destination du formulaire puis sleep etc... Et c'est dans ce cas que les copies se font en même temps à la fin de tous les sleep.
 
Donc si vous aviez une idée du problème, ça serait sympa de m'éclairer =)

n°2053918
NeitCraym
Posté le 02-02-2011 à 23:50:25  profilanswer
 

Un vieux vieux Post mais qui ne trouve aucune réponse sur le web !
 
J'ai enfin trouvé la solution ! Pour tout vous dire, j'en ai fait un tutoriel pour que celle-ci demeure et puisse aider d'autres personnes tant le nombre de non-réponse est important !   :p  
 
Tutoriel - Exécuter un script PHP à intervalle régulier
 
Simple et efficace !  :sol: Bonne lecture !
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Executer un script à intervalle de temps régulier sans être gourmand

 

Sujets relatifs
appeler un logiciel à partir d'un script[PHP] Faire un script simple de mailing
Problème de script... facile pour un connaisseur...Methode sax vers un script sql
Executer du code compilé...empecher un fichier php de s'executer...
Recuperer une chaine de caractere venant d'un script PHPExecuter commandes externes via exec avec un apache chrooté
[c#][vs.NET]executer un fichier mp3Script pour fair un "pop checker"
Plus de sujets relatifs à : Executer un script à intervalle de temps régulier sans être gourmand


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR