1
0
mirror of https://github.com/php/doc-tr.git synced 2026-04-29 18:03:12 +02:00
Files
2022-11-17 16:43:57 +03:00

230 lines
7.2 KiB
XML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: de9c65c91ff1710d8b2d2ec955caea0162679305 Maintainer: nilgun Status: ready -->
<refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.socket-recvfrom">
<refnamediv>
<refname>socket_recvfrom</refname>
<refpurpose>Bağlantılı olsun olmasın bir soketten veri alır</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>int</type><type>false</type></type><methodname>socket_recvfrom</methodname>
<methodparam><type>Socket</type><parameter>soket</parameter></methodparam>
<methodparam><type>string</type><parameter role="reference">tmmpon</parameter></methodparam>
<methodparam><type>int</type><parameter>uzunluk</parameter></methodparam>
<methodparam><type>int</type><parameter>seçenekler</parameter></methodparam>
<methodparam><type>string</type><parameter role="reference">adres</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter role="reference">port</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
<function>socket_recvfrom</function> işlevi belirtilen
<parameter>soket</parameter> üzerinden <parameter>tampon</parameter>
tamponundan <parameter>uzunluk</parameter> baytlık veriyi
<parameter>adres</parameter>'teki <parameter>port</parameter>. porttan
alır. İşlev bağlantılı (tcp) ve bağlantısız (udp) soketlerle çalışabilir.
Ayrıca, bazı seçeneklerle işlevin davranışında değişiklik yapılabilir.
</para>
<para>
<parameter>isim</parameter> ve <parameter>port</parameter> gönderimli
aktarılmalıdır. Soket bağlantı yönelimli değilse <parameter>isim</parameter>
bağımsız değişkenine uzak konağın IP adresi veya Unix soketinin dosya yolu
atanacaktır. Soketin bağlantı yönelimli olması durumunda
<parameter>isim</parameter> &null;'dur. Bunun yanında, soketin bir
bağlantısız <constant>AF_INET</constant> veya <constant>AF_INET6</constant>
soket olması durumunda <parameter>port</parameter> uzak konağın port
numarasını içerecektir.
</para>
&note.bin-safe;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>soket</parameter></term>
<listitem>
<para>
<function>socket_create</function> ile oluşturulmuş geçerli bir
<classname>Socket</classname> nesnesi.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>tampon</parameter></term>
<listitem>
<para>
Alınan verinin yerleştirileceği tampon.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>uzunluk</parameter></term>
<listitem>
<para>
Uzak konaktan alınacak azami bayt sayısı.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>seçenekler</parameter></term>
<listitem>
<para>
Aşağıdaki değerlerin bitsel VEYAlanmış (|) bir birleşimi olabilir
</para>
<table>
<title>Olası <parameter>seçenekler</parameter></title>
<tgroup cols="2">
<thead>
<row>
<entry>Seçenek</entry>
<entry>Açıklama</entry>
</row>
</thead>
<tbody>
<row>
<entry><constant>MSG_OOB</constant></entry>
<entry>
Band dışı veri işlenir.
</entry>
</row>
<row>
<entry><constant>MSG_PEEK</constant></entry>
<entry>
Veri alım kuyruğunun başlangıcından alınırken kuyruktan silinmez.
</entry>
</row>
<row>
<entry><constant>MSG_WAITALL</constant></entry>
<entry>
<parameter>uzunluk</parameter> bayt alınıncaya kadar soket
baskılanır. Ancak, bir sinyal alınırsa veya uzak konak bağlantıyı
keserse işlev daha az veriyle dönebilir.
</entry>
</row>
<row>
<entry><constant>MSG_DONTWAIT</constant></entry>
<entry>
İşlev bekleme kipinde olsa bile bu seçenek işlevin beklemeden
dönmesine sebep olur.
</entry>
</row>
</tbody>
</tgroup>
</table>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>adres</parameter></term>
<listitem>
<para>
Soket <constant>AF_UNIX</constant> türündeyse dosya yolu, bağlantısız
soketse uzak konağın IP adresi, bağlantı yönelimli bir soketse
&null;'dur.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>port</parameter></term>
<listitem>
<para>
Sadece <constant>AF_INET</constant> ve <constant>AF_INET6</constant>
soketlere uygulanır ve verinin alındığı uzak portu belirtir. Soket
bağlantı yönelimli ise <parameter>port</parameter> &null; olacaktır.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
<function>socket_recvfrom</function> işlevi alınan bayt sayısını döndürür.
Bir hata oluşmuşsa &false; döner. Hata kodu
<function>socket_last_error</function> işlevi ile alınabilir. Bu hata
kodunu <function>socket_strerror</function> işlevine aktararak hatayı
açıklayan dizgeyi alabilirsiniz.
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
&sockets.changelog.socket-param;
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>- <function>socket_recvfrom</function> örneği</title>
<programlisting role="php">
<![CDATA[
<?php
$socket = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
socket_bind($socket, '127.0.0.1', 1223);
$from = '';
$port = 0;
socket_recvfrom($socket, $buf, 12, 0, $from, $port);
echo "$from adresinin $port. portundan $buf bayt alındı" . PHP_EOL;
?>
]]>
</programlisting>
<para>
Bu örnek 127.0.0.1 adresindeki 1223. port üzerinde bir UDP portu
oluşturup uzak konaktan alınacak 12 bayta kadar veriyi gösterir.
</para>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>socket_recv</function></member>
<member><function>socket_send</function></member>
<member><function>socket_sendto</function></member>
<member><function>socket_create</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->