當前位置: 首頁>>代碼示例>>PHP>>正文


PHP select::remove方法代碼示例

本文整理匯總了PHP中select::remove方法的典型用法代碼示例。如果您正苦於以下問題:PHP select::remove方法的具體用法?PHP select::remove怎麽用?PHP select::remove使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在select的用法示例。


在下文中一共展示了select::remove方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: htmlentities

     // 建立到真實服務器的socket
     $server_sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
     socket_connect($server_sock, "127.0.0.1", $listen_port);
     // 建立真實服務器socket和真實客戶端socket之間的映射關係
     $socket_maps1[$new_client] = $server_sock;
     $socket_maps2[$server_sock] = $new_client;
     // 添加到select輪詢中
     $select->add($server_sock);
     // $listen_sock的可讀數據是因為有新連接,已經處理了。暫時去掉,因為下麵開始處理數據轉發
     //select->remove( $listen_sock );
 } else {
     // 讀取數據,失敗則從輪詢socket中刪除,並關閉socket
     $client_data = @socket_read($socket, 1024, PHP_NORMAL_READ);
     if ($client_data === false) {
         socket_close($socket);
         $select->remove($socket);
         echo "client disconnected.<br />";
         continue;
     }
     // 如果socket在$socket_maps1的key中,說明是從客戶端讀到了數據
     if (in_array($socket, array_keys($socket_maps1))) {
         //echo "readed from client.<br />";
         if (!socket_write($socket_maps1[$socket], $client_data)) {
             socket_close($socket);
             socket_close($socket_maps1[$socket]);
             $select->remove($socket);
             $select->remove($socket_maps1[$socket]);
             print "Write to server error.<br />";
         }
         print htmlentities($client_data) . "</b><br />";
     } elseif (in_array($socket, array_keys($socket_maps2))) {
開發者ID:xl7dev,項目名稱:WebShell,代碼行數:31,代碼來源:sniffer.php


注:本文中的select::remove方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。