Files
php-doc-ru/reference/stream/functions/stream-socket-sendto.xml
2024-09-16 02:51:52 +03:00

146 lines
5.0 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: e50e79746736dbdfbabe9bd3566793b3ddf38f58 Maintainer: mch Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.stream-socket-sendto" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>stream_socket_sendto</refname>
<refpurpose>Отправляет сообщение в сокет, независимо от состояния подключения сокета</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>int</type><type>false</type></type><methodname>stream_socket_sendto</methodname>
<methodparam><type>resource</type><parameter>socket</parameter></methodparam>
<methodparam><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>flags</parameter><initializer>0</initializer></methodparam>
<methodparam choice="opt"><type>string</type><parameter>address</parameter><initializer>""</initializer></methodparam>
</methodsynopsis>
<para>
Функция отправляет данные <parameter>data</parameter> через сокет
<parameter>socket</parameter>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>socket</parameter></term>
<listitem>
<para>
Сокет, в который требуется отправить данные <parameter>data</parameter>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Данные для отправки.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>flags</parameter></term>
<listitem>
<para>
Параметр <parameter>flags</parameter> принимает произвольную комбинацию следующих флагов,
которые соединили двоичным оператором ИЛИ — <literal>|</literal>.
<table>
<title>Значения флагов, которые принимает параметр <parameter>flags</parameter></title>
<tgroup cols="2">
<tbody>
<row>
<entry><constant>STREAM_OOB</constant></entry>
<entry>
Обрабатывать внеполосные OOB-данные (out-of-band).
</entry>
</row>
</tbody>
</tgroup>
</table>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>address</parameter></term>
<listitem>
<para>
Функция будет использовать адрес, который указали, когда создавали потоковый сокет,
до тех пор, пока в параметре <parameter>address</parameter> не указали альтернативный адрес.
</para>
<para>
Адрес указывают в формате IPv4 или IPv6.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Функция возвращает код результата в виде целого числа&return.falseforfailure;.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Пример отправки сообщения в сокет функцией <function>stream_socket_sendto</function></title>
<programlisting role="php">
<![CDATA[
<?php
/* Открываем сокет на порте 1234 хоста localhost */
$socket = stream_socket_client('tcp://127.0.0.1:1234');
/* Отправляем стандартные данные через стандартные каналы */
fwrite($socket, "Передача стандартных данных.");
/* Отправляем внеполосные данные */
stream_socket_sendto($socket, "Внеполосные данные.", STREAM_OOB);
/* Закрываем сокет */
fclose($socket);
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><function>stream_socket_recvfrom</function></member>
<member><function>stream_socket_client</function></member>
<member><function>stream_socket_server</function></member>
</simplelist>
</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
-->