最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php實(shí)現(xiàn)的Curl封裝類Curl.class.php用法實(shí)例分析

 更新時(shí)間:2015年09月25日 11:18:30   作者:deeka  
這篇文章主要介紹了php實(shí)現(xiàn)的Curl封裝類Curl.class.php用法,以完整實(shí)例形式較為詳細(xì)的分析了Curl封裝類的定義及相關(guān)使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了php實(shí)現(xiàn)的Curl封裝類Curl.class.php用法。分享給大家供大家參考。具體如下:

<?php
//curl類
class Curl
{
 function Curl(){
  return true;
 }
 function execute($method, $url, $fields='', $userAgent='', $httpHeaders='', $username='', $password=''){
  $ch = Curl::create();
  if(false === $ch){
   return false;
  }
  if(is_string($url) && strlen($url)){
   $ret = curl_setopt($ch, CURLOPT_URL, $url);
  }else{
   return false;
  }
  //是否顯示頭部信息
  curl_setopt($ch, CURLOPT_HEADER, false);
  //
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  if($username != ''){
   curl_setopt($ch, CURLOPT_USERPWD, $username . ':' . $password);
  }
  $method = strtolower($method);
  if('post' == $method){
   curl_setopt($ch, CURLOPT_POST, true);
   if(is_array($fields)){
    $sets = array();
    foreach ($fields AS $key => $val){
     $sets[] = $key . '=' . urlencode($val);
    }
    $fields = implode('&',$sets);
   }
   curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
  }else if('put' == $method){
   curl_setopt($ch, CURLOPT_PUT, true);
  }
  //curl_setopt($ch, CURLOPT_PROGRESS, true);
  //curl_setopt($ch, CURLOPT_VERBOSE, true);
  //curl_setopt($ch, CURLOPT_MUTE, false);
  curl_setopt($ch, CURLOPT_TIMEOUT, 10);//設(shè)置curl超時(shí)秒數(shù)
  if(strlen($userAgent)){
   curl_setopt($ch, CURLOPT_USERAGENT, $userAgent);
  }
  if(is_array($httpHeaders)){
   curl_setopt($ch, CURLOPT_HTTPHEADER, $httpHeaders);
  }
  $ret = curl_exec($ch);
  if(curl_errno($ch)){
   curl_close($ch);
   return array(curl_error($ch), curl_errno($ch));
  }else{
   curl_close($ch);
   if(!is_string($ret) || !strlen($ret)){
    return false;
   }
   return $ret;
  }
 }
 function post($url, $fields, $userAgent = '', $httpHeaders = '', $username = '', $password = ''){
  $ret = Curl::execute('POST', $url, $fields, $userAgent, $httpHeaders, $username, $password);
  if(false === $ret){
   return false;
  }
  if(is_array($ret)){
   return false;
  }
  return $ret;
 }
 function get($url, $userAgent = '', $httpHeaders = '', $username = '', $password = ''){
  $ret = Curl::execute('GET', $url, '', $userAgent, $httpHeaders, $username, $password);
  if(false === $ret){
   return false;
  }
  if(is_array($ret)){
   return false;
  }
  return $ret;
 }
 function create(){
  $ch = null;
  if(!function_exists('curl_init')){
   return false;
  }
  $ch = curl_init();
  if(!is_resource($ch)){
   return false;
  }
  return $ch;
 }
}
?>

GET用法:

$curl = new Curl();
$curl->get('http://www.XXX.com/');

POST用法:

$curl = new Curl();
$curl->get('http://www.XXX.com/', 'p=1&time=0');

希望本文所述對(duì)大家的php程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論

嘉鱼县| 资中县| 桃江县| 湘阴县| 河池市| 连州市| 顺义区| 安多县| 阿巴嘎旗| 永登县| 阿拉善盟| 河东区| 万全县| 九江县| 偃师市| 兴业县| 惠州市| 正宁县| 剑阁县| 永定县| 南和县| 威宁| 昭通市| 永寿县| 美姑县| 福泉市| 长岛县| 叶城县| 宁德市| 丰都县| 井冈山市| 环江| 海淀区| 乐山市| 城固县| 石城县| 齐河县| 长岭县| 贞丰县| 行唐县| 满洲里市|