stream_socket_recvfrom
Description
The stream_socket_recvfrom of Stream for PHP receives data from a socket, connected or not.
Syntax
stream_socket_recvfrom(
resource $socket,
int $length,
int $flags = 0,
?string &$address = null
): string|falseParameters
socket
The remote socket.
length
The number of bytes to receive from the socket.
flags
The value of flags can be any combination of the following:
| Constant | Description |
|---|---|
| STREAM_OOB | Process OOB (out-of-band) data. |
| STREAM_PEEK | Retrieve data from the socket, but do not consume the buffer. Subsequent calls to fread() or stream_socket_recvfrom() will see the same data. |
address
If address is provided it will be populated with the address of the remote socket.
Return
Returns the read data, as a string, or false on failure.
Examples
1 · socket length
<?
$transport = "tcp";
$host = "127.0.0.1";
$port = "1234";
$local_socket = $transport . "://" . $host . ":" . $port;
$server = stream_socket_server($local_socket);
$socket = stream_socket_accept($server);
$length = 1500;
$return = stream_socket_recvfrom($socket, $length);
echo $return;
fclose($socket);
fclose($server);
2 · flags · STREAM_OOB
<?
$transport = "tcp";
$host = "127.0.0.1";
$port = "1234";
$local_socket = $transport . "://" . $host . ":" . $port;
$server = stream_socket_server($local_socket);
$socket = stream_socket_accept($server);
$length = 1500;
$flags = STREAM_OOB;
$return = stream_socket_recvfrom($socket, $length, $flags);
echo $return;
fclose($socket);
fclose($server);
3 · flags · STREAM_PEEK
<?
$transport = "tcp";
$host = "127.0.0.1";
$port = "1234";
$local_socket = $transport . "://" . $host . ":" . $port;
$server = stream_socket_server($local_socket);
$socket = stream_socket_accept($server);
$length = 1500;
$flags = STREAM_PEEK;
$return = stream_socket_recvfrom($socket, $length, $flags);
echo $return;
fclose($socket);
fclose($server);
4 · address
<?
$transport = "tcp";
$host = "127.0.0.1";
$port = "1234";
$local_socket = $transport . "://" . $host . ":" . $port;
$server = stream_socket_server($local_socket);
$socket = stream_socket_accept($server);
$length = 1500;
$flags = STREAM_PEEK;
$return = stream_socket_recvfrom($socket, $length, $flags, $address);
echo $return . PHP_EOL;
echo $address;
fclose($socket);
fclose($server);
Links
Stream
- stream_bucket_append
- stream_bucket_make_writeable
- stream_bucket_new
- stream_bucket_prepend
- stream_context_create
- stream_context_get_default
- stream_context_get_options
- stream_context_get_params
- stream_context_set_default
- stream_context_set_option
- stream_context_set_options
- stream_context_set_params
- stream_copy_to_stream
- stream_filter_append
- stream_filter_prepend
- stream_filter_register
- stream_filter_remove
- stream_get_contents
- stream_get_filters
- stream_get_line
- stream_get_meta_data
- stream_get_transports
- stream_get_wrappers
- stream_is_local
- stream_isatty
- stream_notification_callback
- stream_register_wrapper
- stream_resolve_include_path
- stream_select
- stream_set_blocking
- stream_set_chunk_size
- stream_set_read_buffer
- stream_set_timeout
- stream_set_write_buffer
- stream_socket_accept
- stream_socket_client
- stream_socket_enable_crypto
- stream_socket_get_name
- stream_socket_pair
- stream_socket_sendto
- stream_socket_server
- stream_socket_shutdown
- stream_supports_lock
- stream_wrapper_register
- stream_wrapper_restore
- stream_wrapper_unregister