Navigation
 Startseite
 Fachbücher
 Forum
 Webmaster News
 Script Newsletter
 Kontakt
 Script Installation
 Php
 Php Tutorials
 Impressum

Community-Bereich
 kostenlos Registrieren
 Anmelden
 Benutzerliste

Script Datenbank
 Script Archiv
 Script Top 20
 Screenshots
 Testberichte

Suche
 

Unsere Php Scripts
 Counter Script
 Umfrage Script
 Bilder Upload Script
 Terminverwaltung
 Simple PHP Forum
 RSS Grabber

Script Mods
 phpBB Adsense Mode

Tools und Generatoren
 .htpasswd Generator
 md5 Generator
 base64 Generator
 Markdown to HTML
 Colorpicker
 Unix timestamp Tool
 TLD Liste
 Webkatalog‑Verzeichnis

Partner
 Sprüche Treff

Artfiles.de
Bietet Serviceorientierte Internetdienstleistungen...
https://www.Artfiles.de
Hosterplus.de
Bekommen Sie Speicherplatz (Webspace), Domains und...
https://www.Hosterplus.de
 
 
 

PHP Script verzögern in Mikrosekunden

Sie befinden sich: Home > Php Tutorial > PHP Script verzögern in Mik...

PHP Script verzögern in Mikrosekunden


Eintrag am:  18.08.2010
Hits / Besucher:  5317
Sprache:  Deutsch
Kategorie:  Einsteiger Tutorials...
Tutorial Art:  eigenes
Eingetragen von   schubertmedia schubertmedia
 
Beschreibung

Für diverse Scripts kann es vonnöten sein, seinen Ablauf um eine bestimmte Zeitspanne zu verzögern. Hierzu gibt es die Funktion usleep();, die den kompletten Ablauf des Scripts um die im Parameter angegebene Anzahl an Mikrosekunden (ms) verzögert.

Die Syntax:

usleep(Anzahl_Mikrosekunden);

Hierbei ist zu beachten, dass der Befehl auf Windows-System erst ab der PHP Version 5.0 oder höher funktioniert.

Beispiel 1:

<?php

echo 'Start des PHP Script: '.date('h:i:s') . '<br>';
usleep(5000000);
echo 'Ende des PHP Script: '.date('h:i:s') . '<br>';
?>

Ausgabe:

Start des PHP Script: [Uhrzeit zu Ausführungsbeginn]

Ende des PHP Script: [Uhrzeit fünf Sekunden (5000000 ms) nach Ausführungsbeginn]

Erklärung:

Der Befehl date() gibt die aktuelle Uhrzeit im Format hh:mm:ss aus, was direkt am Anfang des Scripts, und nach der durch usleep(); erzeugten Verzögerung geschieht. Anschließend wird das Ergebnis an den Client gesendet.

Eine praktischere Anwendungsmöglichkeit stellt unter anderem ein einfacher Countdown dar. Hierbei muss allerdings zusätzlich beachtet werden, dass bei einfacher Anwendung von usleep zunächst das komplette Script durch den Server abgearbeitet, und das Ergebnis erst dann an den Client-Browser weitergeleitet wird. Der Benutzer würde hierbei also nur das Endergebnis zu sehen bekommen. Um dies zu umgehen, wird die Funktion flush(); verwendet, die das Zwischenergebnis zum Zeitpunkt der Ausführungs dieser Funktion an den Client sendet.

Beispiel 2:

<?php

echo "Countdown von 10!<br>";
for ($x = 10; $x >= 0; $x-- ) {
echo "--- ".$x." ---<br>";
flush();
usleep(1000000);
}
?>

Ausgabe:

Countdown von 10!

10
9
8
7
6
5
4
3
2
1
0

Erklärung:

Nach Beginn des Scripts mit echo(); wird eine for-Schleife gestartet, die zehnmal ausgeführt werden soll und dabei jedes ihre Zählvariable ausgibt, das Zwischenergebnis an den Client sendet und danach für eine Sekunde pausiert.

Eine weitere Möglichkeit, ein Script zu verzögern bietet die Funktion sleep();, wobei hier die zu verzögernde Zeit in Sekunden angegeben wird.

 

Tags:

 

Artikel hinzufügen bei:
         
Bücherregal mit drei Büchern: 'PHP 4 - Grundlagen und Profiwissen' von Hanser Verlag, 'Webdesign in a Nutshell' von O'Reilly Verlag, und 'Webgestaltung' von Galileo Computing.