利用php的socket编程来直接给接口发送数据来模拟post的操作。 
<?PHP /************************************************************************ 
Name: POST 测试程序 Vesion: 1.0 Date: 2004-08-05 *************************************************************************
/ flag = 0;
 //要post的数据 
argv = array(
 'var1'=>'abc', 
 'var2'=>'你好吗'); 
//构造要post的字符串 
foreach (argv as key=>value) { 
 if (flag!=0) {
 params .= "&"; 
 flag = 1; 
 } 
 params.= key."="; params.= urlencode(value); 
 flag = 1; 
 } 
 length = strlen(params);
 //创建socket连接 
 fp = fsockopen("127.0.0.1",80,errno,errstr,10) or exit(errstr."--->".errno); 
 //构造post请求的头 
 header = "POST /mobile/try.php HTTP/1.1\r\n"; 
 header .= "Host:127.0.0.1\r\n"; 
 header .= "Referer:/mobile/sendpost.php\r\n"; 
 header .= "Content-Type: application/x-www-form-urlencoded\r\n"; 
 header .= "Content-Length: ".length."\r\n"; 
 header .= "Connection: Close\r\n\r\n";
 //添加post的字符串 
 header .= params."\r\n"; 
 //发送post的数据 
 fputs(fp,header); 
 inheader = 1; 
 while (!feof(fp)) {
 line = fgets(fp,1024); //去除请求包的头只显示页面的返回数据 
 if (inheader && (line == "\n" || line == "\r\n")) {
 inheader = 0; 
 } 
 if (inheader == 0) { 
 echo line; 
 } 
 } 
fclose(fp); 
?>
还可以使用php类HttpClient
Snoopy http://sourceforge.net/projects/snoopy/
or httpClient http://scripts.incutio.com/httpclient/
来源:网络