php

Utilisation de la fonction usleep() en PHP

Utilisation de la fonction usleep() en PHP

Deux fonctions sont principalement utilisées en PHP pour retarder l'exécution du script pendant un certain temps. Ce sont usleep() et sleep(). La fonction usleep() est utilisée pour retarder l'exécution du script pendant des microsecondes spécifiques. Cette fonction peut lever une exception si la valeur négative des microsecondes est fournie. Cette fonction consomme également le cycle CPU lorsqu'elle est appelée. Comment cette fonction peut être utilisée en PHP a montré dans ce tutoriel.

Syntaxe:

La syntaxe de cette fonction est donnée ci-dessous.

void usleep (int microsecondes)

Cette fonction prend la valeur des microsecondes comme arguments de fonction utilisés pour retarder le script où cette fonction est utilisée. Cette fonction ne renvoie rien. Les différentes utilisations de cette fonction sont illustrées ci-dessous à l'aide de divers exemples.

Exemple-1 : Utilisation de usleep() pour attendre 5 secondes

L'exemple suivant montre comment usleep() peut être utilisé pour définir le délai de 5 secondes dans le script. Créez un fichier PHP avec le script suivant. La fonction date() est utilisée dans le script pour lire la date et l'heure actuelles. La fonction usleep() est appelée après l'exécution de la première fonction date(). 5 secondes équivaut à 5 000 000 microsecondes. Ainsi, 5000000 est utilisé comme valeur d'argument usleep() pour définir le délai de 5 secondes. Ensuite, la fonction date() est à nouveau appelée.

//Afficher la date et l'heure actuelle
echo date('d F, Y h:i:s a'). "
";
//Imprimer le message
echo "Attente 5 secondes…
";
//Retarder l'exécution du script pendant 5 secondes
dormir(5000000);
 
//Afficher la date et l'heure actuelle
echo date('d F, Y h:i:s a'). "
";
?>

Production

Le script attendra 5 secondes après l'avoir exécuté depuis le serveur. La sortie montre que le script a commencé l'exécution à 05:32:05 et le script s'est terminé à 05:32:11. Donc, 5 secondes se sont écoulées avant d'afficher la sortie.

Exemple-2 : Utilisation de usleep() pour attendre des temps aléatoires

L'exemple suivant montre comment les fonctions usleep() et rand() peuvent être utilisées pour définir le délai pour un nombre aléatoire de fois. Créez un fichier PHP avec le script suivant. La première fonction date () du script lira l'heure système actuelle. Ensuite, la fonction rand() est utilisée pour générer un nombre entre 1000000 et 4000000, et la valeur aléatoire générée sera utilisée comme valeur d'argument de la fonction usleep(). Le nombre aléatoire généré sera divisé par 1000000 et utilisé dans la fonction round() pour obtenir le temps de retard en secondes. La deuxième fonction date () est utilisée pour lire la valeur de l'heure après l'exécution de la fonction usleep ().

//Afficher l'heure actuelle
écho date('h:i:s a'). "
";
//Définir la valeur aléatoire des microsecondes
$delay = rand(1000000,4000000);
//Retarder l'exécution du script pendant des secondes définies
usleep($delay);
//Convertir les microsecondes en secondes
$secondes = round($delay/1000000);
//Imprimer le message
echo "En attente de $secondes secondes…
";
//Afficher l'heure actuelle
écho date('h:i:s a'). "
";
?>

Production

Selon la sortie suivante, le script a attendu 4 secondes après s'être exécuté sur le serveur. La sortie montre que le script a commencé l'exécution à 05:35:40 et le script s'est terminé à 05:35:44. Donc, le script a été retardé de 4 secondes.

Exemple-3 : Répétez le script après 2 secondes

L'exemple suivant montre comment le même script peut être répété après 2 secondes de délai en fonction de la sélection de l'utilisateur. Créez un fichier HTML nommé formulaire 1.html avec le script suivant pour prendre la valeur de X et m.

formulaire 1.html




Utilisation de la fonction usleep()



Entrez la valeur de x :

Entrez la valeur de n :




Les données du formulaire seront soumises dans le fichier PHP nommé Puissance.php pour calculer le x à la puissance n. Créer le Puissance.php fichier avec le script suivant. Il vérifiera que les valeurs des champs du formulaire HTML sont définies ou non. Si les valeurs sont correctement soumises, alors le x à la puissance m sera calculé et le script attendra 2 secondes. Une boîte d'alerte apparaîtra après 2 secondes. Un autre formulaire avec une case à cocher apparaîtra pour demander à l'utilisateur de répéter la même tâche après avoir cliqué sur le bouton OK de la boîte d'alerte.

Puissance.php

//Vérifiez que les valeurs de x et n sont définies ou non
if(isset($_POST['x']) && isset($_POST['n']))

$drapeau = faux ;
$x = $_POST['x'] ;
$n = $_POST['n'] ;
//Calculer le x à la puissance n
$résultat = pow($x,$n);
//Imprimer le résultat
echo "$x à la puissance $n est $résultat
";
//Affiche le formulaire pour répéter ou non la tâche
écho '
Refaire la tâche
';
//Attendez deux secondes
dormir(2000000);
//Affiche l'alerte
echo "alerte('Attente 2 secondes… ')" ;

autre

si(!isset($_POST['ok']))
inclure('form1.html');
autre

//Répéter la tâche à nouveau si la case est cochée
if(isset($_POST['tâche'] ))
if($_POST['task'] == 'on')
inclure('form1.html');
autre
die("Le script est terminé.");

autre
die("Le script est terminé.");


?>

Production

Le formulaire suivant apparaîtra après l'exécution du script PHP depuis le serveur. Dans la sortie, 4 est défini pour la valeur de x et 3 est défini pour n.


Après avoir soumis le formulaire, le script calculeraet attendez 2 secondes avant d'afficher la boîte d'alerte.

Le formulaire suivant apparaîtra pour sélectionner l'option pour afficher à nouveau le formulaire précédent pour calculer la puissance d'une autre valeur de x et n après avoir appuyé sur le bouton OK.


Si l'utilisateur appuie sur le d'accord bouton sans cocher la case, le script se terminera en affichant le message suivant.

Conclusion

Lorsque le script PHP nécessite un délai pour une période spécifique à des fins de programmation, la fonction usleep() peut être utilisée pour effectuer la tâche. La fonction usleep() a été expliquée dans ce tutoriel en utilisant divers exemples pour aider les lecteurs à savoir comment générer un délai dans le script. Sleep() est une autre fonction intégrée de PHP à développer dans le script.

Comment modifier les paramètres de la souris et du pavé tactile à l'aide de Xinput sous Linux
La plupart des distributions Linux sont livrées avec la bibliothèque "libinput" par défaut pour gérer les événements d'entrée sur un système. Il peut ...
Remappez les boutons de votre souris différemment pour différents logiciels avec X-Mouse Button Control
Peut-être que vous avez besoin d'un outil qui pourrait faire changer le contrôle de votre souris avec chaque application que vous utilisez. Si tel est...
Examen de la souris sans fil Microsoft Sculpt Touch
J'ai lu récemment sur le Microsoft Sculpt Touch souris sans fil et j'ai décidé de l'acheter. Après l'avoir utilisé pendant un certain temps, j'ai déci...