mirror of
https://github.com/php/php-src.git
synced 2024-10-19 07:22:40 +00:00
89 lines
1.6 KiB
PHP
89 lines
1.6 KiB
PHP
--TEST--
|
|
Testing stream_get_meta_data() "eof" field on a udp socket
|
|
--FILE--
|
|
<?php
|
|
|
|
/* Setup socket server */
|
|
$server = stream_socket_server('tcp://127.0.0.1:31337');
|
|
|
|
/* Connect to it */
|
|
$client = fsockopen('tcp://127.0.0.1:31337');
|
|
|
|
/* Accept that connection */
|
|
$socket = stream_socket_accept($server);
|
|
|
|
echo "Write some data:\n";
|
|
fwrite($socket, "abcdefg\n1234567\nxyzxyz\n");
|
|
var_dump(stream_get_meta_data($client));
|
|
|
|
echo "\n\nRead a line from the client:\n";
|
|
fgets($client);
|
|
var_dump(stream_get_meta_data($client));
|
|
|
|
echo "\n\nClose the server side socket and read the remaining data from the client:\n";
|
|
fclose($socket);
|
|
fclose($server);
|
|
while(!feof($client)) {
|
|
fread($client, 1);
|
|
}
|
|
var_dump(stream_get_meta_data($client));
|
|
|
|
fclose($client);
|
|
|
|
?>
|
|
--EXPECTF--
|
|
Write some data:
|
|
array(7) {
|
|
["stream_type"]=>
|
|
string(10) "tcp_socket"
|
|
["mode"]=>
|
|
string(2) "r+"
|
|
["unread_bytes"]=>
|
|
int(%i)
|
|
["seekable"]=>
|
|
bool(false)
|
|
["timed_out"]=>
|
|
bool(false)
|
|
["blocked"]=>
|
|
bool(true)
|
|
["eof"]=>
|
|
bool(false)
|
|
}
|
|
|
|
|
|
Read a line from the client:
|
|
array(7) {
|
|
["stream_type"]=>
|
|
string(10) "tcp_socket"
|
|
["mode"]=>
|
|
string(2) "r+"
|
|
["unread_bytes"]=>
|
|
int(%i)
|
|
["seekable"]=>
|
|
bool(false)
|
|
["timed_out"]=>
|
|
bool(false)
|
|
["blocked"]=>
|
|
bool(true)
|
|
["eof"]=>
|
|
bool(false)
|
|
}
|
|
|
|
|
|
Close the server side socket and read the remaining data from the client:
|
|
array(7) {
|
|
["stream_type"]=>
|
|
string(10) "tcp_socket"
|
|
["mode"]=>
|
|
string(2) "r+"
|
|
["unread_bytes"]=>
|
|
int(%i)
|
|
["seekable"]=>
|
|
bool(false)
|
|
["timed_out"]=>
|
|
bool(false)
|
|
["blocked"]=>
|
|
bool(true)
|
|
["eof"]=>
|
|
bool(true)
|
|
}
|