ID: 48280
User updated by: php at bouchery dot fr
Reported By: php at bouchery dot fr
-Status: Feedback
+Status: Open
Bug Type: Streams related
-Operating System: *
+Operating System: Windows XP SP2
-PHP Version: 5.2.9
+PHP Version: 5.2.13-dev (cli) (built: Dec 21 2009 23:46:51)
New Comment:
No, result is already :
Code #1: Duration = 4
Code #2: Duration = 6
Code #3: Duration = 8
Previous Comments:
[2009-12-22 10:03:51] j...@php.net
Please try using this snapshot:
http://snaps.php.net/php5.2-latest.tar.gz
For Windows:
http://windows.php.net/snapshots/
[2009-05-20 13:29:13] php at bouchery dot fr
I did it on localhost and on a remote machine:
sleep-flush.php
sleep.php
[2009-05-20 12:59:15] j...@php.net
And where are the sources for those server side scripts?
[2009-05-14 11:59:39] php at bouchery dot fr
Description:
When I perform a HTTP timeout using "stream_context_create",
"stream_set_timeout" or "default_socket_timeout", timeout is doubled.
I did it on :
- Windows XP SP2 + PHP-Cli 5.1.6
- Windows XP SP2 + PHP-Cli 5.2.9-2
- Debian 5 + PHP 5.2.0-8+etch13 (cli)
Reproduce code:
---
http://localhost/sleep-flush.php', 'r');
if( $f !== false ) {
stream_set_timeout($f, 2);
$content = stream_get_contents( $f );
fclose($f);
}
echo 'Code #1: Duration = ', (time() - $time), "\n";
$context = stream_context_create(array('http' => array('timeout' =>
3)));
$time = time();
// sleep do not flush text before sleeping 20 seconds
$f = @fopen('http://localhost/sleep.php', 'r', false, $context);
if( $f !== false ) {
$content = stream_get_contents( $f );
fclose($f);
}
echo 'Code #2: Duration = ', (time() - $time), "\n";
ini_set('default_socket_timeout', '4');
$time = time();
// sleep do not flush text before sleeping 20 seconds
$f = @fopen('http://localhost/sleep.php', 'r');
if( $f !== false ) {
$content = stream_get_contents( $f );
fclose($f);
}
echo 'Code #3: Duration = ', (time() - $time), "\n";
?>
Expected result:
Code #1: Duration = 2
Code #2: Duration = 3
Code #3: Duration = 4
Actual result:
--
Code #1: Duration = 4
Code #2: Duration = 6
Code #3: Duration = 8
--
Edit this bug report at http://bugs.php.net/?id=48280&edit=1