Have you got any idea what to do when you want to measure the time but not in the loop? Case: you want to limit the time of reading from an open socket (fread), the other side doesn't answer, you wait and wait... Piotr Plusa ----- Wiadomosc oryginalna ----- Od: "Brendan" <[EMAIL PROTECTED]> Do: <[EMAIL PROTECTED]> Wyslano: 23 maja 2001 01:54 Temat: [PHP-WIN] RE:escape loop on timeout > > > Zak Greant wrote: > > > Johan Lundqvist wrote: > > > This is a way of doing it: > > > > > > $s = time() + 10; > > > for ($i = time(); $i <= $s; $i++) { > > > print $i; > > > } > > > > > > Will run for about ten seconds... > > > > Did you leave a bit of code out? > > In most cases, this will run for only a few milliseconds. :) > > > > Try something like this instead: > > > > $timeout = 1; // Timeout in seconds > > $start_time = time(); // Get the current time > > > > for ($x=0; $x < 1000000000; ++$x) { > > > > /* > > // Check if we have gone over the time limit > > // Only check every 1000 loops - this keeps > > // us from chewing run time by checking the time > > // all the time :) > > */ > > if ( (0 === ($x % 1000)) && (time () - $start_time) > $timeout) > > break; > > > > echo ($x, '<br>'); > > } > > > > --zak > > > > ---------------- > > Thanks guys > > sorry about the delay .. I am in Australia.. > checking the time each loop would only work if the loops complete correctly > .. if the process locks mid loop php wont reach the criterion break because > it deals with each command linearly. ie > > for (x=0;x!="array full";x++) > dothisfunction(x); > if ( (0 === ($x % 1000)) && (time () - $start_time) > $timeout) > break; > etc > > if dothisfunction() locks up wont the entire script freeze? > > maybe I am wrong.. > > what I am after is something like alert() in Perl or the 'on error resume > next' in ASP which runs externally to the loop and breaks to the next > instance if it is taking too long... > any ideas? > cheers! > > > > > > > > > -- > PHP Windows Mailing List (http://www.php.net/) > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > To contact the list administrators, e-mail: [EMAIL PROTECTED] > > -- PHP Windows Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]