note 44187 added to function.socket-create-listen
| From: | jdittmer at ppp0 dot net | Date: | Sat, 17 Jul 2004 08:42:23 +0000 |
| Subject: | note 44187 added to function.socket-create-listen | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-73430@lists.php.net to get a copy of this message | ||
If you specify no port number, or 0, a random free port will be chosen.
To use ports for ipc between client/server on the same machine you can use (minus error checking)
server.php:
<?php
$sock = socket_create_listen(0);
socket_getsockname($sock, $addr, $port);
print "Server Listening on $addr:$port\n";
$fp = fopen($port_file, 'w');
fwrite($fp, $port);
fclose($fp);
while($c = socket_accept($sock)) {
/* do something useful */
socket_getpeername($sock, $raddr, $rport);
print "Received Connection from $raddr:$rport\n";
}
socket_close($sock);
?>
client.php:
<?php
$fp = fopen($port_file, 'r');
$port = fgets($fp, 1024);
fclose($fp);
$sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
socket_connect($sock, '127.0.0.1', $port);
socket_close($sock);
?>
----
Manual Page -- http://www.php.net/manual/en/function.socket-create-listen.php
Edit -- http://master.php.net/manage/user-notes.php?action=edit+44187
Delete -- http://master.php.net/manage/user-notes.php?action=delete+44187&report=yes
Reject -- http://master.php.net/manage/user-notes.php?action=reject+44187&report=yes
Search -- http://master.php.net/manage/user-notes.php