kk mao tanya donk.. gimana caranya nya menjalankan 2 server socket
dalam 1 komputer server? sintax di bawah sudah bisa dijalankan dalam 1
server dan 1 port.. tapi saya mao buat di beda port tapi prosesnya
sequential.. socket sebelumnya harus di close terlebih dahulu..
<?
$address = $_REQUEST["a"];
$port = $_REQUEST["b"];
$sesid = $_REQUEST["c"];
set_time_limit(0);
ob_implicit_flush();
$sock[$sesid] = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
socket_set_option($sock[$sesid], SOL_SOCKET, SO_REUSEADDR, 1);
socket_bind($sock[$sesid], $address, $port);
socket_listen($sock[$sesid]);
socket_set_nonblock($sock[$sesid]);
$clients = array($sock[$sesid]);
while (true) {
$read = $clients;
if (socket_select($read, $write = NULL, $except = NULL, 0) < 1)
continue;
if (in_array($sock[$sesid], $read)) {
$clients[] = $newsock = socket_accept($sock[$sesid]);
$key = array_search($sock[$sesid], $read);
unset($read[$key]);
}
foreach ($read as $read_sock) {
$data = @socket_read($read_sock, 100, PHP_BINARY_READ);
if ($data === false) {
$key = array_search($read_sock, $clients);
unset($clients[$key]);
continue;
}
if($data=='s'){
break 2;
}
if (!$data = trim($data)) {
continue;
}else{
//
}
$data = trim($data);
} // end of reading foreach
}
socket_close($sock[$sesid]);
?>
--
Bobby Karsono
http://www.hosanasoftindo.com
--
FAQ milis di http://wiki.linux.or.id/FAQ_milis_tanya-jawab
Unsubscribe: kirim email ke [email protected]
Arsip dan info milis selengkapnya di http://linux.or.id/milis