Dormir... 
 De Jean-Philippe Léveillé - Mardi 4 Juin 2002 à 18:32

La fonction sleep() de PHP fait sensiblement la même chose (sauf qu'elle n'exécute pas de fonction lorsqu'elle a terminé son exécution). sleep($nb_secondes) permet de créer un délai de $nb_secondes dans l'exécution d'un programme PHP.

On utilise sleep() lorsque l'exécution d'un script prend beaucoup de ressources et que nous ne voulons pas monopoliser un serveur (dans le calcul de statistiques par exemple, l'utilisation de sleep(1) après chaque étape de calcul - une bonne dizaine par exemple - retarde quelque peu le résultat obtenu par le script, mais ne bloque pas les requêtes faites par les autres utilisateurs sur le serveur).

usleep peut être utilisé aussi (sauf dans Windows !), il est cependant précis aux microsecondes (1/1000000 de sec !).

  Et sleep alors ? 
 De Serge Delbono - Mardi 11 Juin 2002 à 10:51

La fonction sleep() fait la même chose de façon beaucoup plus élégante (et sans utiliser du CPU sur le serveur).

Voir aussi usleep() pour les tempos en microsecondes.

  Un timer en PHP, impossible 
 De Dinesh Bolkensteyn - Jeudi 13 Juin 2002 à 16:18

Il est impossible de créer un timer en PHP.

Pourquoi ? Parce que le code est exécuté
ligne par ligne, et il resterait toujours bloqué
sur la boucle sans-fin qui appelle la fonction voulue.

Pour décaler l'appelle d'une fonction, c'est:

<?
..
usleep(1000); // sa attend 1 seconde
function();
..
?>

Petite précision ;P un timer exécute periodiquement une fonction, et l'intervale doit se préciser en millisecondes.