Contrôler le temps d'exécution d'une partie d'un script

Contrôler le temps d'exécution d'une partie d'un script - PHP - Programmation

Marsh Posté le 25-10-2005 à 11:31:08    

Hello :)
 
J'ai un gros script qui fait pas mal de regex et d'autres bêtises, et parfois il peut prendre un peu (voir beaucoup) de temps. Dans le cas où ça prends vraiment trop de temps, je veux en arrêter l'exécution.
 
Je ne sais pas trop comment contrôler tout ça, mais quels sont les possibilités ?
 
Merciiiiiiii :ange:

Reply

Marsh Posté le 25-10-2005 à 11:31:08   

Reply

Marsh Posté le 25-10-2005 à 12:08:47    

Avec la fonction microtime que tu execute avant et aprés la zone de script que tu veux tester tu peux avoir le temps écoulé.
 
la doc qui va  bien (facile à faire avec les exemples présentés dedans) :
http://fr2.php.net/manual/fr/function.microtime.php


Message édité par prblsouris le 25-10-2005 à 12:09:14

---------------
http://www.hardware404.com L'actualité hardware francophone en continu
Reply

Marsh Posté le 25-10-2005 à 12:11:37    

Le problème c'est que je dois le savoir en temps réel ! Par exemple il va chercher des informations, et parfois le site en question est down, mais PHP reste en attente de recevoir les informations (avec un fopen sur l'URL), et je veux stopper son exécution...

Reply

Marsh Posté le 25-10-2005 à 12:21:49    

si tu veux savoir ou en est ton script PHP avant la fin de l'execution tu peux lui faire indiquer dans un fichier texte les étapes qu'il a parcouru.
 
régulierement tu fait un truc du genre :
$f = fopen('tracker.txt','a');
fwrite($f, "Etape 2 OK ".microtime()."\\\n" );
fclose($f);


---------------
http://www.hardware404.com L'actualité hardware francophone en continu
Reply

Marsh Posté le 25-10-2005 à 12:25:31    

Le problème c'est qu'il bloque sur un fgets...qui n'arrive jamais!

Reply

Marsh Posté le 25-10-2005 à 14:02:28    

Reply

Marsh Posté le 25-10-2005 à 14:21:26    

TigrouMeow a écrit :

Le problème c'est qu'il bloque sur un fgets...qui n'arrive jamais!


ça veux dire quoi "qui n'arrive jamais" ?
c'est une page web que tu lis ?


---------------
http://www.hardware404.com L'actualité hardware francophone en continu
Reply

Marsh Posté le 25-10-2005 à 14:23:20    

Ouais je lis une page web, mais parfois le serveur est off, du coup... php attends via fgets et ça n'arrive jamais ! J'aurais voulu limiter ce temps à 1 ou 2 secondes un truc du genre, pour pas que ça attende les 30s par défaut du php.ini ... enfin je veux définir une limite seulement pour cette partie du script, je veux pas modifier mon php.ini, car j'ai d'autres scripts qui prennent plus de temps :)

Reply

Marsh Posté le 25-10-2005 à 14:29:53    

Reply

Marsh Posté le 25-10-2005 à 14:30:18    

TigrouMeow a écrit :

Ouais je lis une page web, mais parfois le serveur est off, du coup... php attends via fgets et ça n'arrive jamais ! J'aurais voulu limiter ce temps à 1 ou 2 secondes un truc du genre, pour pas que ça attende les 30s par défaut du php.ini ... enfin je veux définir une limite seulement pour cette partie du script, je veux pas modifier mon php.ini, car j'ai d'autres scripts qui prennent plus de temps :)


 
Ok pigé, tiens c'est déjà fait  ;)  :
http://www.nexen.net/docs/php/anno [...] imeout.php


---------------
http://www.hardware404.com L'actualité hardware francophone en continu
Reply

Marsh Posté le 25-10-2005 à 14:30:18   

Reply

Marsh Posté le 25-10-2005 à 18:11:58    

C'est super ça !!! Merci beaucoup :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed