stream_socket_serverBir Genel Ağ veya Unix alan sunucusu soketi oluşturur
&reftitle.description;
resourcefalsestream_socket_serverstringadresinthatanum&null;stringileti&null;intseçeneklerSTREAM_SERVER_BIND | STREAM_SERVER_LISTENresourcenullbağlam&null;
Belirtilen adres üzerinde bir akım veya
verikatarı soketi oluşturur.
Bu işlev, stream_socket_accept kullanarak veri kabul
etmek üzere bir soket oluşturmaktan başka bir şey yapmaz.
&reftitle.parameters;
adres
Oluşturulacak soketin türü standart URL biçemi kullanılarak belirtilir:
şema://hedef.
TCP ve UDP gibi Genel Ağ Alanı soketleri (AF_INET)
için, adres'in hedef
parçası bir konak ismi veya IP adresinden sonra gelen bir ikinokta imi
ve bir port numarasından oluşur. Unix alan soketleri için
hedef parçası ise dosya sistemi üstündeki bir soket
dosyasını göstermelidir.
Platforma bağlı olarak, Unix alan soketleri mevcut olmayabilir.
Kullanılabilecek aktarım çeşitlerinin listesi
stream_get_transports işlevi ile alınabilir.
Yerleşik aktarım türlerinin tam listesini
sayfasında bulabilirsiniz.
hatanum
Seçimlik hatanum ve ileti
bağımsız değişkenleri belirtilmişse, bunlara socket(),
bind() ve listen() sistem
çağrılarında oluşan sistem seviyesindeki hatanın bilgisi atanır. Eğer
hatanum bağımsız değişkeninde 0
döndüğünde işlev &false; döndürmüşse hata, bind()
çağrısından önce oluşmuş demektir.
Bu sorunla çoğunlukla soketin ilklendirilmesi sırasında karşılaşılır.
hatanum ve ileti
bağımsız değişkenlerinin daima gönderimli aktarılmasına dikkat edilmelidir.
iletihatanum bağımsız değişkeninin açıklamasına bakınız.
seçenekler
Soket oluşturma seçeneklerinden oluşan bir bit maskesi.
UDP soketleri için, bu bağımsız değişkenle
STREAM_SERVER_BIND değerini aktarmalısınız.
bağlamstream_context_create ile oluşturulmuş geçerli bir
bağlam özkaynağı.
&reftitle.returnvalues;
Bir hata durumunda &false;, aksi takdirde oluşturulan soketi döndürür.
&reftitle.changelog;
&Version;&Description;8.0.0bağlam artık &null; olabiliyor.
&reftitle.examples;
- TCP sunucu soketlerinin kullanımı
\n";
} else {
while ($conn = stream_socket_accept($socket)) {
fwrite($conn, 'Yerel zaman: ' . date('n/j/Y g:i a') . "\n");
fclose($conn);
}
fclose($socket);
}
?>
]]>
Aşağıdaki örnekte, stream_socket_client işleviyle
ilgili örneklerden birinde yapılan bir zaman sorgusuna bir zaman
sunucusunun yanıt vermesi için neler yapıldığı gösterilmiştir.
Çoğu sistem, 1024'ten küçük portları oluşturmak için root yetkisine
ihtiyaç duyar.
- UDP sunucu soketlerinin kullanımı
]]>
&reftitle.notes;
&ipv6.brackets;
&reftitle.seealso;
stream_socket_clientstream_set_blockingstream_set_timeoutfgetsfgetssfwritefclosefeofCurl eklentisi