如何實現phpsocket超時設置-創新互聯

如何實現php socket 超時設置?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

我們提供的服務有:網站制作、成都網站制作、微信公眾號開發、網站優化、網站認證、融安ssl等。為數千家企事業單位解決了網站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的融安網站制作公司

php socket超時設置的方法:首先打開相應的腳本文件;然后創建一個sendUdp方法;接著通過“socket_create”等方法對超時情況進行設置;最后保存該文件即可。

php socket 超時設置

1、php創建socket的方法和設置超時的方法,貼出來分享一下

//如果$waitAckSec=0,則返回成功發送的字節??
    //如果$waitAckSec大于0,則返回發送后接收到得內容
    //任何情況下,失敗都返回FALSE
    function sendUdp($host, $port, $buff,$waitAckSec=0) {
        $socket = ($result = @socket_create(AF_INET,SOCK_DGRAM,SOL_UDP));
        //發送超時1秒
        socket_set_option($socket,SOL_SOCKET,SO_RCVTIMEO,array("sec"=>3, "usec"=>0 ) );
        //接收超時6秒
        socket_set_option($socket,SOL_SOCKET,SO_SNDTIMEO,array("sec"=>6, "usec"=>0 ) );
        if($socket){
            $result = @socket_sendto($socket,$buff,strlen($buff),0,$host,$port);
            if($waitAckSec>0){
                $result = FALSE;
                $read = array($socket);
                $write = NULL;
                $except = NULL;
                if(@socket_select($read,$write,$except,$waitAckSec)>0){
                    $fromHost = "";
                    $fromPort = 0;
                    @socket_recvfrom($socket,$result,4096,0,$fromHost,$fromPort);
                    $result = phpext_unpack($result);
                    if($result["needAck"] == 1){
                        $this->sendUdp($host, $port, $result["ackdata"]);
                        if(isset ($result['data']['list']) && isset ($result['data']['totalCount'])){
                            $list = $result['data']['list'];
                            $count = $result['data']['totalCount'];
                            while($count>  count($list)){
                                @socket_recvfrom($socket,$result_temp,4096,0,$fromHost,$fromPort);
                                $result_temp = phpext_unpack($result_temp);
                                $this->sendUdp($host, $port, $result_temp["ackdata"]);
                                $list = array_merge($list,$result_temp['data']['list']);
                            }
                            $result['data']['list'] = $list;
                        }
                    }else{
                        @socket_recvfrom($socket,$result,4096,0,$fromHost,$fromPort);
                        $result = phpext_unpack($result);
                        if($result["needAck"] == 1){
                            $this->sendUdp($host, $port, $result["ackdata"]);
                            if(isset ($result['data']['result']) && isset ($result['data']['userID'])){
                                $list = $result['data']['list'];
                                $count = $result['data']['totalCount'];
                                while($count>  count($list)){
                                    @socket_recvfrom($socket,$result_temp,4096,0,$fromHost,$fromPort);
                                    $result_temp = phpext_unpack($result_temp);
                                    $this->sendUdp($host, $port, $result_temp["ackdata"]);
                                    $list = array_merge($list,$result_temp['data']['list']);
                                }
                                $result['data']['list'] = $list;
                            }
                        }
                    }
                }else{
                    $result = SEND_UDP_ERROR;
                }
            }
            @socket_close($socket);
        }
        return $result;
    }

關于如何實現php socket 超時設置問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注創新互聯-成都網站建設公司行業資訊頻道了解更多相關知識。

分享題目:如何實現phpsocket超時設置-創新互聯
網站URL:http://m.kartarina.com/article16/dicddg.html

成都網站建設公司_創新互聯,為您提供App設計響應式網站微信公眾號品牌網站制作Google標簽優化

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都定制網站建設
主站蜘蛛池模板: 色视频综合无码一区二区三区| 精品爆乳一区二区三区无码av| 久久无码精品一区二区三区| 国产精品无码永久免费888 | 久久无码av三级| 日韩精品人妻系列无码专区| 国产成年无码v片在线| 东京热人妻无码一区二区av | 18禁超污无遮挡无码免费网站国产 | 亚洲AV无码一区二区乱子仑| 亚洲Av无码乱码在线播放| 秋霞无码一区二区| 日本无码色情三级播放| 亚洲爆乳少妇无码激情| 久久久久亚洲AV无码专区首JN | 永久免费AV无码网站在线观看| 亚洲av永久无码精品秋霞电影影院| 九九无码人妻一区二区三区| 色综合AV综合无码综合网站| 成人午夜精品无码区久久 | 国产成人无码A区精油按摩| 亚洲VA中文字幕无码毛片| 中文无码喷潮在线播放| 成人免费无码大片A毛片抽搐色欲| 免费无码中文字幕A级毛片| 久久午夜无码鲁丝片直播午夜精品| 高清无码一区二区在线观看吞精| 中文字幕亚洲精品无码| 亚洲AV永久无码区成人网站| 中文精品无码中文字幕无码专区| 四虎成人精品国产永久免费无码| 亚洲精品无码你懂的| 亚洲精品无码成人片久久不卡| 无码H肉动漫在线观看| 日韩人妻精品无码一区二区三区| 亚洲精品无码不卡| 免费看成人AA片无码视频羞羞网| 亚洲美免无码中文字幕在线| 亚洲AV色吊丝无码| 亚洲av无码专区在线电影天堂| 无码少妇A片一区二区三区|