這篇文章給大家分享的內容是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);
使用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(); // 接收回包
轉載位址
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);
使用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(); // 接收回包
轉載位址
https://www.liudon.org/1324.html
相關推薦:
以上是PHP進行tcp連接的詳細內容。更多資訊請關注PHP中文網其他相關文章!
陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

本文比較了PHP和ASP.NET,重點是它們對大規模Web應用程序,性能差異和安全功能的適用性。兩者對於大型項目都是可行的,但是PHP是開源和無關的,而ASP.NET,

本文討論了PHP數據對象(PDO),這是PHP中數據庫訪問的擴展名。它通過準備好的語句及其對MySQLI的好處,包括數據庫抽象和更好的錯誤處理,強調了PDO在增強安全性方面的作用。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章
Windows 11 KB5054979中的新功能以及如何解決更新問題
3 週前ByDDD
如何修復KB5055523無法在Windows 11中安裝?
2 週前ByDDD
Inzoi:如何申請學校和大學
3 週前ByDDD
如何修復KB5055518無法在Windows 10中安裝?
2 週前ByDDD
Roblox:Dead Rails - 如何召喚和擊敗Nikola Tesla
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

Dreamweaver Mac版
視覺化網頁開發工具

WebStorm Mac版
好用的JavaScript開發工具

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。