socket_connect
Description
The socket_connect of Sockets for PHP initiates a connection on a socket.
Syntax
socket_connect( Socket $socket, string $address, ?int $port = null ): bool
Parameters
socket
A Socket instance created with socket_create().
address
The address parameter is either an IPv4 address in dotted-quad notation (e.g. 127.0.0.1) if socket is AF_INET, a valid IPv6 address (e.g. ::1) if IPv6 support is enabled and socket is AF_INET6 or the pathname of a Unix domain socket, if the socket family is AF_UNIX.
port
The port parameter is only used and is mandatory when connecting to an AF_INET or an AF_INET6 socket, and designates the port on the remote host to which a connection should be made.
Return
Returns true on success or false on failure.
The error code can be retrieved with socket_last_error(). This code may be passed to socket_strerror() to get a textual explanation of the error.
NOTE: If the socket is non-blocking then this function returns false with an error Operation now in progress.
Examples
1 · socket address
<? $domain = AF_UNIX; $type = SOCK_STREAM; $protocol = 0; $serversocket = socket_create($domain, $type, $protocol); if($serversocket === false) { $error_code = socket_last_error(); $socket_strerror = socket_strerror($error_code); die("socket_create: $socket_strerror"); } $address = '/tmp/mysocket'; if(file_exists($address)) { unlink($address); } $socket_bind = socket_bind($serversocket, $address); if($socket_bind === false) { $error_code = socket_last_error($serversocket); $socket_strerror = socket_strerror($error_code); die("socket_bind: $socket_strerror"); } $socket_listen = socket_listen($serversocket); if($socket_listen === false) { $error_code = socket_last_error($serversocket); $socket_strerror = socket_strerror($error_code); die("socket_listen: $socket_strerror"); } $socket = socket_create($domain, $type, $protocol); if($socket === false) { $error_code = socket_last_error(); $socket_strerror = socket_strerror($error_code); die("socket_create: $socket_strerror"); } $return = socket_connect($socket, $address); if($return === false) { $error_code = socket_last_error($socket); $socket_strerror = socket_strerror($error_code); die("socket_connect: $socket_strerror"); } var_export($return); socket_close($socket); socket_close($serversocket); ?>
true
2 · port
<? $domain = AF_INET; $type = SOCK_STREAM; $protocol = SOL_TCP; $serversocket = socket_create($domain, $type, $protocol); if($serversocket === false) { $error_code = socket_last_error(); $socket_strerror = socket_strerror($error_code); die("socket_create: $socket_strerror"); } $address = '127.0.0.1'; $port = 5000; $socket_bind = socket_bind($serversocket, $address, $port); if($socket_bind === false) { $error_code = socket_last_error($serversocket); $socket_strerror = socket_strerror($error_code); die("socket_bind: $socket_strerror"); } $socket_listen = socket_listen($serversocket); if($socket_listen === false) { $error_code = socket_last_error($serversocket); $socket_strerror = socket_strerror($error_code); die("socket_listen: $socket_strerror"); } $socket = socket_create($domain, $type, $protocol); if($socket === false) { $error_code = socket_last_error(); $socket_strerror = socket_strerror($error_code); die("socket_create: $socket_strerror"); } $return = socket_connect($socket, $address, $port); if($return === false) { $error_code = socket_last_error($socket); $socket_strerror = socket_strerror($error_code); die("socket_connect: $socket_strerror"); } var_export($return); socket_close($socket); socket_close($serversocket); ?>
true
Links
Sockets
- socket_accept
- socket_addrinfo_bind
- socket_addrinfo_connect
- socket_addrinfo_explain
- socket_addrinfo_lookup
- socket_atmark
- socket_bind
- socket_clear_error
- socket_close
- socket_cmsg_space
- socket_create
- socket_create_listen
- socket_create_pair
- socket_export_stream
- socket_get_option
- socket_getopt
- socket_getpeername
- socket_getsockname
- socket_import_stream
- socket_last_error
- socket_listen
- socket_read
- socket_recv
- socket_recvfrom
- socket_recvmsg
- socket_select
- socket_send
- socket_sendmsg
- socket_sendto
- socket_set_block
- socket_set_nonblock
- socket_set_option
- socket_setopt
- socket_shutdown
- socket_strerror
- socket_write
- socket_wsaprotocol_info_export
- socket_wsaprotocol_info_import
- socket_wsaprotocol_info_release