summaryrefslogtreecommitdiff
path: root/ext/standard/tests/file/fgets_socket_variation1.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/standard/tests/file/fgets_socket_variation1.phpt')
-rw-r--r--ext/standard/tests/file/fgets_socket_variation1.phpt56
1 files changed, 56 insertions, 0 deletions
diff --git a/ext/standard/tests/file/fgets_socket_variation1.phpt b/ext/standard/tests/file/fgets_socket_variation1.phpt
new file mode 100644
index 0000000..57944d8
--- /dev/null
+++ b/ext/standard/tests/file/fgets_socket_variation1.phpt
@@ -0,0 +1,56 @@
+--TEST--
+fgets() with a socket stream
+--CREDITS--
+Dave Kelsey <d_kelsey@uk.ibm.com>
+--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');
+
+if (!$client) {
+ die("Unable to create socket");
+}
+
+/* Accept that connection */
+$socket = stream_socket_accept($server);
+
+echo "Write some data:\n";
+fwrite($socket, "line1\nline2\nline3\n");
+
+
+echo "\n\nRead a line from the client:\n";
+var_dump(fgets($client));
+
+echo "\n\nRead another line from the client:\n";
+var_dump(fgets($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);
+}
+
+echo "done\n";
+
+?>
+--EXPECT--
+Write some data:
+
+
+Read a line from the client:
+string(6) "line1
+"
+
+
+Read another line from the client:
+string(6) "line2
+"
+
+
+Close the server side socket and read the remaining data from the client
+done