PHP进行tcp连接

不言
Lepaskan: 2023-03-23 14:28:01
asal
4531 orang telah melayarinya

本篇文章给大家分享的内容是PHP进行tcp连接,有着一定的参考价值,有需要的朋友可以参考一下


原生PHP的写法。

$host = '服务端IP';    $port = 端口号;    $timeout = 5;    $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);    if (socket_connect($socket, $host, $port) === false) { // 创建连接
        socket_close($socket);        $message = 'create socket error';        throw new Exception($message, socket_last_error());
    }   

    if (socket_write($socket, $buffer) === false) { // 发包
        socket_close($socket);        $message = sprintf("write socket error:%s", socket_strerror(socket_last_error()));        throw new Exception($message, socket_last_error());
    }   

    socket_set_option($socket, SOL_SOCKET, SO_RCVTIMEO, $timeout);    $rspBuffer = socket_read($socket, 65536); // 接收回包

    socket_close($socket);
Salin selepas log masuk
Salin selepas log masuk

使用swoole的写法。

$client = new swoole_client(SWOOLE_SOCK_TCP, SWOOLE_SOCK_SYNC);$ret = $client->connect('服务端IP', 端口号, 0.5, 0);  // 创建连接if (!$ret) {
    throw new Exception('connect error', $client->errCode);
}   

$client->send($buffer); // 发包$rspBuffer = $client->recv(); // 接收回包
Salin selepas log masuk
Salin selepas log masuk

转载地址


https://www.liudon.org/1324.html

原生PHP的写法。

$host = '服务端IP';    $port = 端口号;    $timeout = 5;    $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);    if (socket_connect($socket, $host, $port) === false) { // 创建连接
        socket_close($socket);        $message = 'create socket error';        throw new Exception($message, socket_last_error());
    }   

    if (socket_write($socket, $buffer) === false) { // 发包
        socket_close($socket);        $message = sprintf("write socket error:%s", socket_strerror(socket_last_error()));        throw new Exception($message, socket_last_error());
    }   

    socket_set_option($socket, SOL_SOCKET, SO_RCVTIMEO, $timeout);    $rspBuffer = socket_read($socket, 65536); // 接收回包

    socket_close($socket);
Salin selepas log masuk
Salin selepas log masuk

使用swoole的写法。

$client = new swoole_client(SWOOLE_SOCK_TCP, SWOOLE_SOCK_SYNC);$ret = $client->connect('服务端IP', 端口号, 0.5, 0);  // 创建连接if (!$ret) {
    throw new Exception('connect error', $client->errCode);
}   

$client->send($buffer); // 发包$rspBuffer = $client->recv(); // 接收回包
Salin selepas log masuk
Salin selepas log masuk

转载地址

https://www.liudon.org/1324.html

相关推荐:

PHP进行读取CSV文件数据和生成CSV文件


Atas ialah kandungan terperinci PHP进行tcp连接. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan