欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP CURL 多線程操作代碼實(shí)例

 更新時(shí)間:2015年05月13日 09:35:32   投稿:junjie  
這篇文章主要介紹了PHP CURL 多線程操作代碼實(shí)例,本文直接給出實(shí)現(xiàn)代碼,需要的朋友可以參考下

使用方法:

$urls = array("http://baidu.com", "http://21andy.com", "http://google.com");
$mp = new MultiHttpRequest($urls);
$mp->start();
/*
 * Curl 多線程類
 * 使用方法:
 * ========================
$urls = array("http://baidu.com", "http://dzone.com", "http://google.com");
$mp = new MultiHttpRequest($urls);
$mp->start();
 * ========================
 */
class MultiHttpRequest {
  public $urls = array();
  public $curlopt_header = 1;
  public $method = "GET";
 
  function __construct($urls = false) {
    $this->urls = $urls;
  }
 
  function set_urls($urls) {
    $this->urls = $urls;
    return $this;
   }
 
   function is_return_header($b) {
     $this->curlopt_header = $b;
     return $this;
   }
 
   function set_method($m) {
     $this->medthod = strtoupper($m);
     return $this;
   }
 
   function start() {
     if(!is_array($this->urls) or count($this->urls) == 0){
      return false;
     }
     $curl = $text = array();
     $handle = curl_multi_init();
     foreach($this->urls as $k=>$v){
      $curl[$k] = $this->add_handle($handle, $v);
     }
 
     $this->exec_handle($handle);
     foreach($this->urls as $k=>$v){
       curl_multi_getcontent($curl[$k]);
       echo $curl[$k]."\n";
       //$text[$k] = curl_multi_getcontent($curl[$k]);
       //echo $text[$k], "\n\n";
       curl_multi_remove_handle($handle, $curl[$k]);
     }
     curl_multi_close($handle);
   }
 
   private function add_handle($handle, $url) {
     $curl = curl_init();
     curl_setopt($curl, CURLOPT_URL, $url);
     curl_setopt($curl, CURLOPT_HEADER, $this->curlopt_header);
     curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
     curl_multi_add_handle($handle, $curl);
     return $curl;
   }
 
   private function exec_handle($handle) {
     $flag = null;
     do {
      curl_multi_exec($handle, $flag);
     } while ($flag > 0);
   }
}

相關(guān)文章

  • php的curl攜帶header請求頭信息實(shí)現(xiàn)http訪問的方法

    php的curl攜帶header請求頭信息實(shí)現(xiàn)http訪問的方法

    這篇文章主要介紹了php的curl攜帶header請求頭信息實(shí)現(xiàn)http訪問的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-01-01
  • PHP實(shí)現(xiàn)中國公民身份證號碼有效性驗(yàn)證示例代碼

    PHP實(shí)現(xiàn)中國公民身份證號碼有效性驗(yàn)證示例代碼

    這篇文章主要介紹了PHP實(shí)現(xiàn)中國公民身份證號碼有效性驗(yàn)證示例代碼,可以判斷身份證號碼的正確性,非常具有實(shí)用價(jià)值
    2017-05-05
  • PHP判斷數(shù)組是否為空的常用方法(五種方法)

    PHP判斷數(shù)組是否為空的常用方法(五種方法)

    本文介紹了PHP開發(fā)中遇到的數(shù)組問題,小編在這里給大家總結(jié)了5中方法關(guān)于php判斷數(shù)組是否為空問題,需要的朋友參考下
    2017-02-02
  • Laravel路由研究之domain解決多域名問題的方法示例

    Laravel路由研究之domain解決多域名問題的方法示例

    這篇文章主要介紹了Laravel 路由研究之domain解決多域名問題的方法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-04-04
  • laravel接管Dingo-api和默認(rèn)的錯(cuò)誤處理方式

    laravel接管Dingo-api和默認(rèn)的錯(cuò)誤處理方式

    今天小編就為大家分享一篇laravel接管Dingo-api和默認(rèn)的錯(cuò)誤處理方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-10-10
  • CodeIgniter配置之SESSION用法實(shí)例分析

    CodeIgniter配置之SESSION用法實(shí)例分析

    這篇文章主要介紹了CodeIgniter配置之SESSION用法,結(jié)合實(shí)例形式分析了PHP中session的運(yùn)行原理并演示了CI框架下session的配置與使用方法,需要的朋友可以參考下
    2016-01-01
  • php高清晰度無損圖片壓縮功能的實(shí)現(xiàn)代碼

    php高清晰度無損圖片壓縮功能的實(shí)現(xiàn)代碼

     經(jīng)常會(huì)用到把上傳的大圖片壓縮,特別是體積,在微信等APP應(yīng)用上,也默認(rèn)都是有壓縮的,那么,怎么樣對圖片大幅度壓縮卻仍能保持較高的清晰度呢?接下來通過本文給大家分享php高清晰度無損圖片壓縮功能,感興趣的朋友一起看看吧
    2018-12-12
  • 詳解WordPress中添加友情鏈接的方法

    詳解WordPress中添加友情鏈接的方法

    這篇文章主要介紹了詳解WordPress中添加友情鏈接的方法,分別介紹了使用模板和使用jQuery的實(shí)現(xiàn)方法,需要的朋友可以參考下
    2016-05-05
  • magento后臺(tái)無法登錄解決辦法的兩種方法

    magento后臺(tái)無法登錄解決辦法的兩種方法

    可能很多朋友有同樣的經(jīng)歷,magento在服務(wù)器中配置域名是可以正常的訪問了,但是在本地配置后卻無法登錄后臺(tái),賬號密碼登錄的時(shí)候發(fā)現(xiàn)出現(xiàn)空白,無法跳轉(zhuǎn)到后臺(tái),本文章向大家介紹兩種解決本地magento后臺(tái)無法登錄的方法,需要的朋友可以參考下
    2016-12-12
  • thinkphp3.x中變量的獲取和過濾方法詳解

    thinkphp3.x中變量的獲取和過濾方法詳解

    這篇文章主要介紹了thinkphp3.x中變量的獲取和過濾方法,結(jié)合實(shí)例分析了thinkPHP針對各種常見變量如get、post、cookie、session、URL等的獲取及過濾等技巧,需要的朋友可以參考下
    2016-05-05

最新評論