downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

uniqid> <time_nanosleep
Last updated: Fri, 24 Sep 2010

view this page in

time_sleep_until

(PHP 5 >= 5.1.0)

time_sleep_until Make the script sleep until the specified time

Description

bool time_sleep_until ( float $timestamp )

Makes the script sleep until the specified timestamp.

Parameters

timestamp

The timestamp when the script should wake.

Return Values

Returns TRUE on success or FALSE on failure.

Changelog

Version Description
5.3.0 This function is now available on Windows platforms.

Errors/Exceptions

If the specified timestamp is in the past, this function will generate a E_WARNING.

Examples

Example #1 A time_sleep_until() example

<?php

//returns false and generates a warning
var_dump(time_sleep_until(time()-1));

// may only work on faster computers, will sleep up to 0.2 seconds
var_dump(time_sleep_until(microtime(true)+0.2));

?>

Notes

Note: All signals will be delivered after the script wakes up.

See Also



uniqid> <time_nanosleep
Last updated: Fri, 24 Sep 2010
 
add a note add a note User Contributed Notes
time_sleep_until
f dot schima at ccgmbh dot de
15-Feb-2010 06:32
Remember when using usleep() as a replacement for time_sleep_until() that usleep() can be interrupted by signals, time_sleep_until() not.
pasha
03-Sep-2009 03:11
To ensure that usleep() is called with the same argument as the one being tested - a positive number:

<?php
if (!function_exists('time_sleep_until')) {
   function
time_sleep_until($future) {
      
$sleep = ($future - microtime(1))*1000000;
       if (
$sleep<=0) {
          
trigger_error("Time in past", E_USER_WARNING);
           return
false;
       }

      
usleep($sleep);
       return
true;
   }
}
?>
roberto at spadim dot com dot br
16-Dec-2006 04:05
better implementation
<?php
if (!function_exists('time_sleep_until')) {
   function
time_sleep_until($future) {
       if (
$future < time()) {
          
trigger_error("Time in past", E_USER_WARNING);
           return
false;
       }

      
usleep(($future - microtime(1))*1000000);
       return
true;
   }
}
?>
ssnoyes at hotmail dot com
25-Nov-2005 08:58
Implementation for < 5.1 or Windows users

<?php
if (!function_exists('time_sleep_until')) {
    function
time_sleep_until($future) {
        if (
$future < time()) {
           
trigger_error("Time in past", E_USER_WARNING);
            return
false;
        }

       
sleep($future - time());
        return
true;
    }
}
?>

uniqid> <time_nanosleep
Last updated: Fri, 24 Sep 2010
 
 
show source | credits | sitemap | contact | advertising | mirror sites