PHPにおいてCURLを用いてGET及びPOST要求を実現する方法


1.CURL  
CURL     URL               .      , HTTP、FTP、TELNET 。
    PHP   CURL 。     curl       ,   PHP      。
2.    
            ,      PHP   CURL       :
(1)    curl_init()
(2)     curl_setopt() //    ,       。    curl      ,     URL       。                 ,                      。
(3)        curl_exec()
(4)  curl   curl_close() 
3.CURL  Get Post
1)、Get    
    //   
    $ch = curl_init();
    //    ,  URL
    curl_setopt($ch, curlOPT_URL, "http://www.xxx.com");
    curl_setopt($ch, curlOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, curlOPT_HEADER, 0);
    //     HTML    
    $output = curl_exec($ch);
    //  curl  
    curl_close($ch);
    //       
    print_r($output);
2)、Post    
    $url = "http://localhost/web_services.php";
    $post_data = array ("username" => "uname","key" => "123456");
    $ch = curl_init();
    curl_setopt($ch, curlOPT_URL, $url);
    curl_setopt($ch, curlOPT_RETURNTRANSFER, 1);
    // post  
    curl_setopt($ch, curlOPT_POST, 1);
    // post   
    curl_setopt($ch, curlOPT_POSTFIELDS, $post_data);
    $output = curl_exec($ch);
    curl_close($ch);
    //       
    print_r($output);
           json   ,  json_decode       。
    $output_array = json_decode($output,true);
    json_decode($output)    ,    object     。
$url = 'http://commoncgi.dev.wepiao.com/common/default/decrypt';
$post_data = array ("channelId" => "501","str"=>$token);
private function genurl($url,$post_data){
    $ch = curl_init ();   
    curl_setopt ( $ch, CURLOPT_URL, $url );    
    curl_setopt ( $ch, CURLOPT_POST, 1 );    
    curl_setopt ( $ch, CURLOPT_HEADER, 0 );    
    curl_setopt ( $ch, CURLOPT_RETURNTRANSFER , 1 );    
    curl_setopt( $ch, CURLOPT_TIMEOUT,10 );    
    curl_setopt ( $ch, CURLOPT_POSTFIELDS , $post_data );    
    $return = curl_exec ( $ch );    
    curl_close ( $ch );    
    return $return;
}