PHP Conference Japan 2024

stream_socket_sendto

(PHP 5, PHP 7, PHP 8)

stream_socket_sendto傳送訊息到通訊端,無論其是否已連線

說明

stream_socket_sendto(
    資源 $socket,
    字串 $data,
    整數 $flags = 0,
    字串 $address = ""
): 整數 (int)|false

透過 socket 傳送指定的 data

參數

socket

要將 data 傳送至的 socket。

data

要傳送的資料。

flags

flags 的值可以是以下任何值的組合

flags 的可能值
STREAM_OOB 處理 OOB(帶外)數據。

address

除非在 address 中指定了替代地址,否則將使用建立 socket 串流時指定的地址。

如果指定,它必須採用點分四位元組(或 [ipv6])格式。

返回值

返回結果代碼,以整數表示,失敗時返回 false

範例

範例 #1 stream_socket_sendto() 範例

<?php
/* 開啟一個連接到本地主機端口 1234 的 socket */
$socket = stream_socket_client('tcp://127.0.0.1:1234');

/* 透過普通通道傳送普通數據。 */
fwrite($socket, "一般數據傳輸。");

/* 傳送更多帶外數據。 */
stream_socket_sendto($socket, "帶外數據。", STREAM_OOB);

/* 關閉它 */
fclose($socket);
?>

參見

新增註釋

使用者貢獻的註釋 1 則註釋

mrforsythexeter at googlemail dot com
11 年前
返回值似乎是寫入 socket 的數據大小(以位元組為單位),失敗時返回 -1(這可能是因為非阻塞)
To Top