<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # socket_accept * * * * * 說明: > 接受一個套接字連接,成功返回一個新的套接字的信息資源,失敗返回false 語法: ~~~ resource socket_accept ( resource $socket ) ~~~ 參數: | 參數 | 描述 | | --- | --- | | socket | 一個由 socket_create() 創建的有效的資源套接字 | 返回值: | 成功 | 失敗 | | --- | --- | | 返回一個新的socket套接字資源 (resource數據類型) | false | 技術細節: PHP版本:PHP 4 >= 4.1.0, PHP 5, PHP 7 實例: 服務端代碼 server.php ~~~ //創建服務端的socket套接流,net協議為IPv4,protocol協議為TCP if (!$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) { echo ("create socket 失敗: " . socket_strerror(socket_last_error()) and socket_clear_error()); exit; } /*給socket綁定主機和端口(設置socket套接字資源地址),這樣客戶端才能通過主機和端口連接*/ socket_bind($socket, '127.0.0.1', '8080'); //監聽套接流 socket_listen($socket); // 獲取服務端的 地址 和端口 socket_getsockname($sockets[0], $addr, $port); echo '服務端ip:' . ($addr) . PHP_EOL; echo '服務端端口:' . ($port) . PHP_EOL; //設置套接流為非阻塞 socket_set_nonblock($socket); //循環,讓服務器無限獲取客戶端傳過來的信息 while (true) { //接受套接字連接 成功返回一個新的socket套接流 if (($new_socket = socket_accept($socket)) !== false) { // 獲取客戶端的 地址 和端口 socket_getpeername($new_socket, $addr, $port); echo '客戶端ip:' . ($addr) . PHP_EOL; echo '客戶端端口:' . ($port) . PHP_EOL; //讀取客戶端傳過來的資源,并轉化為字符串 $string = socket_read($new_socket, 1024); echo '客戶端發來信息:' . $string . PHP_EOL;//PHP_EOL為php的換行預定義常量 if ($string != false) { // 返回給客戶端的信息 $return_message = 'hello,我來自服務器端' . PHP_EOL; // 向socket_accept的套接流寫入信息 socket_write($new_socket, $return_message, strlen($return_message)); //關閉socket_create()或者socket_accept()所建立的套接流 socket_close($new_socket); } } } socket_close($socket); ~~~ 客戶端代碼 client.php ~~~ //創建一個socket套接流 $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); //連接上面服務端的套接流 if (socket_connect($socket, '127.0.0.1', '8080') == false) { echo '連接失敗信息:' . socket_strerror(socket_last_error()); } else { $message = 'hello ,我是客戶端'; //向服務端寫入字符串信息 if (socket_write($socket, $message, strlen($message)) == false) { echo '寫入失敗信息:' . socket_strerror(socket_last_error()) and socket_clear_error(); } else { echo '客戶端發送信息成功' . PHP_EOL; //讀取服務端返回來的套接流信息 while ($callback = socket_read($socket, 1024)) { echo '服務端返回的信息是:' . PHP_EOL . $callback; } } } socket_close($socket);//工作完畢,關閉套接流 ~~~ 打開windows的cmd窗口,然后,運行php server.php 再打開另外一個cmd窗口 ,然后,運行php client.php 服務端信息: ![](https://box.kancloud.cn/69d4077d8796f1c12e9f412de57f6447_498x50.png) 客戶端信息: ![](https://box.kancloud.cn/db6b6ef2f1a3c24858044602ba2b209a_479x81.png) 注: 1、windows中需要把 php這個運行命名 加入環境變量中 2、需要在php.ini 開啟extension=sockets 模塊 資料來源: http://php.net/manual/zh/book.sockets.php https://www.cnblogs.com/loveyoume/p/6076101.html
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看