方法一(返回的是json字符串格式):
代码如下 复制代码
/**
* curl版本
* 使用方法:
* $post_string = app=request&version=beta;
* request_by_curl('http://facebook.cn/restserver.php',$post_string);
*/
function actionpost($url,$data){ // 模拟提交数据函数
$curl = curl_init(); // 启动一个curl会话
curl_setopt($curl, curlopt_url, $url); // 要访问的地址
curl_setopt($curl, curlopt_ssl_verifypeer, 0); // 对认证证书来源的检查
curl_setopt($curl, curlopt_ssl_verifyhost, 1); // 从证书中检查ssl加密算法是否存在
curl_setopt($curl, curlopt_useragent, $_server['http_user_agent']); // 模拟用户使用的浏览器
curl_setopt($curl, curlopt_followlocation, 1); // 使用自动跳转
curl_setopt($curl, curlopt_autoreferer, 1); // 自动设置referer
curl_setopt($curl, curlopt_post, 1); // 发送一个常规的post请求
curl_setopt($curl, curlopt_postfields, $data); // post提交的数据包
curl_setopt($curl, curlopt_cookiefile, 'cookie.txt'); // 读取上面所储存的cookie信息
curl_setopt($curl, curlopt_timeout, 30); // 设置超时限制防止死循环
curl_setopt($curl, curlopt_header, 0); // 显示返回的header区域内容
curl_setopt($curl, curlopt_returntransfer, 1); // 获取的信息以文件流的形式返回
$tmpinfo = curl_exec($curl); // 执行操作
if (curl_errno($curl)) {
echo 'errno'.curl_error($curl);
}
curl_close($curl); // 关键curl会话
return $tmpinfo; // 返回数据
}
方法二(返回的是json字符串格式):
代码如下 复制代码
function actioncurl($remote_server, $post_string){
$ch = curl_init();
curl_setopt($ch, curlopt_post, 1);
curl_setopt($ch, curlopt_header, 0);
curl_setopt($ch, curlopt_url,$remote_server);
//为了支持cookie
curl_setopt($ch, curlopt_cookiejar, 'cookie.txt');
curl_setopt($ch, curlopt_postfields, $post_string);
$result = curl_exec($ch);
return $result;
}
