2013-03-08 77 views

回答

4

简单的例子:)

<?php 
// 
// A very simple PHP example that sends a HTTP POST to a remote site 
// 

$ch = curl_init(); 

curl_setopt($ch, CURLOPT_URL,"http://www.mysite.com/tester.phtml"); 
curl_setopt($ch, CURLOPT_POST, 1); 
curl_setopt($ch, CURLOPT_POSTFIELDS, 
     "client_secret=sk_test_dndkFknKdtMLhv0eA8OdcgW1, code=GH_Dgl12, grant_type=dsfgsdK"); 

// receive server response ... 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 

$server_output = curl_exec ($ch); 

curl_close ($ch); 

// further processing .... 
if ($server_output == "OK") { ... } else { ... } 

?> 

选项CURLOPT_RETURNTRANSFER会让curl_exec(返回响应,使你可以捕捉它。

1
$url = 'http://domain.com/get-post.php'; 
$fields = array(
      'client_secret' => urlencode('sk_test_dndkFknKdtMLhv0eA8OdcgW1'), 
      'code' => urlencode('GH_Dgl12'), 
      'grant_type' => urlencode('dsfgsdK'), 
     ); 

//url-ify the data for the POST 
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; } 
rtrim($fields_string, '&'); 

//open connection 
$ch = curl_init(); 

//set the url, number of POST vars, POST data 
curl_setopt($ch,CURLOPT_URL, $url); 
curl_setopt($ch,CURLOPT_POST, count($fields)); 
curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string); 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 

//execute post 
$result = curl_exec($ch); 

//close connection 
curl_close($ch); 
+0

非常感谢shaddy..can我可以捕获该服务器的响应? – DjangoDev 2013-03-08 05:10:25

+0

是的,你可以设置curl_setopt($ curl,CURLOPT_RETURNTRANSFER,true);在调用curl_exec之前调用 。然后,响应将被分配给$ result :) – shaddy 2013-03-08 05:21:50