<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>

                ### 在開發中經常面臨一下 調用三方接口 如微信登錄 微信支付 短信驗證碼 ... ... ### 我們 可以直接調用下面的方法 `url` 請求地址 `fields` 請求參數 ~~~ /** #### *curl請求 */ function curl ($url,$fields=[]){ $ch=curl_init(); //設置我們請求的地址 curl_setopt($ch,CURLOPT_URL,$url); //數據返回都不要直接顯示 curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); //禁止證書校驗 curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false); curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,false); //判斷是否是post請求 if($fields){ curl_setopt($ch,CURLOPT_TIMEOUT,30); curl_setopt($ch,CURLOPT_POST,1); curl_setopt($ch,CURLOPT_POSTFIELDS,$fields); } $data=''; if(curl_exec($ch)){ //發送成功,獲取數據 $data=curl_multi_getcontent($ch); } curl_close($ch); return $data; } ~~~ * 同時請求多個接口 哪個先返回數據 先請求哪個接口 ~~~ public function test() { $urls = array( "http://lxr.php.net/", "http://www.php.net/", ); $mh = curl_multi_init(); foreach ($urls as $i => $url) { $conn[$i] = curl_init($url); curl_setopt($conn[$i], CURLOPT_RETURNTRANSFER, 1); curl_multi_add_handle($mh, $conn[$i]); } do { $status = curl_multi_exec($mh, $active); $info = curl_multi_info_read($mh); if (false !== $info) { $result = curl_multi_getcontent($info['handle']); // 這里獲得每個cul的結果,如果結果是想要的就返回,不是就等下一個結果 echo $result; //return $result; } } while ($status === CURLM_CALL_MULTI_PERFORM || $active); foreach ($urls as $i => $url) { curl_close($conn[$i]); } } ~~~ ~~~ $urls = array( "http://lxr.php.net/", "http://www.php.net/", ); $mh = curl_multi_init(); foreach ($urls as $i => $url) { $conn[$i] = curl_init($url); curl_setopt($conn[$i], CURLOPT_RETURNTRANSFER, 1); curl_multi_add_handle($mh, $conn[$i]); } $result = ''; do { $status = curl_multi_exec($mh, $active); curl_multi_select($mh); $info = curl_multi_info_read($mh); if (false !== $info) { $result = curl_multi_getcontent($info['handle']); // 這里獲得某個curl的結果,如果結果ok就break,不ok就等下一個結果 //$is_ok = your_check($result); $is_ok = 1; if ($is_ok) { break; } } } while ($status === CURLM_CALL_MULTI_PERFORM || $active); foreach ($urls as $i => $url) { curl_close($conn[$i]); } // 最快的正確結果 echo $result; ~~~
                  <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>

                              哎呀哎呀视频在线观看