I think something like this will work for you..

$start_time = time();
...loop..
   if( time() - $start_time > 5 ) exit;

-B
Aaron Gould wrote:
I have a script that connects to a networked device via PHP's socket functions. This device accepts proprietary commands (e.g.: "KPRINT", as seen below), and returns data. However, this device does not have any sort of "EXIT" command to end the processing of events. So it essentially loops forever.

I do know that if this device does not return anything after 5 seconds, it will never return anything.

So, my question is: how can I force this script to stop after 5 seconds has elapsed?

Here's the script:

============================================================
$fp = fsockopen('192.168.3.25', 10001, $errno, $errstr, 5);

if (!$fp) {
    echo 'Error...';
} else {
    $command = "KPRINT\r\n";

    fwrite($fp, $command);

    while (!feof($fp)) {
        $buffer = fgets($fp, 1024);
    }

    fclose($fp);
}
============================================================

Thanks!


--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to