码迷,mamicode.com
首页 > Web开发 > 详细

使用 curl() 函数实现不同站点之间注册用户的同步

时间:2017-05-12 14:25:36      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:ror   errno   返回   站点   16px   cookies   use   pos   err   

一 需求

在A站点注册一个新用户,那么,在B站点也会被同时注册

二 思路

在A站点注册的同时,调用API接口实现在B站点也会被同时注册

三 实现

主要代码如下:

技术分享
 1 function http_curl($url,$post=‘‘,$cookie=‘‘, $returnCookie=0){
 2     $curl = curl_init();
 3     curl_setopt($curl, CURLOPT_URL, $url);
 4     curl_setopt($curl, CURLOPT_USERAGENT, ‘Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)‘);
 5     curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
 6     curl_setopt($curl, CURLOPT_AUTOREFERER, 1);
 7     curl_setopt($curl, CURLOPT_REFERER, "http://XXX");
 8     if($post) {
 9         curl_setopt($curl, CURLOPT_POST, 1);
10         curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post));
11     }
12     if($cookie) {
13         curl_setopt($curl, CURLOPT_COOKIE, $cookie);
14     }
15     curl_setopt($curl, CURLOPT_HEADER, $returnCookie);
16     curl_setopt($curl, CURLOPT_TIMEOUT, 10);
17     curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
18     $data = curl_exec($curl);
19     if (curl_errno($curl)) {
20         return curl_error($curl);
21     }
22     curl_close($curl);
23     if($returnCookie){
24         list($header, $body) = explode("\r\n\r\n", $data, 2);
25         preg_match_all("/Set\-Cookie:([^;]*);/", $header, $matches);
26         $info[‘cookie‘]  = substr($matches[1][0], 1);
27         $info[‘content‘] = $body;
28         return $info;
29     }else{
30         return $data;
31     }
32 }
View Code

参数说明:参数1为访问的URL,参数2为post数据(不填则为GET),参数3为提交的$cookies,参数4为是否返回$cookies。

使用 curl() 函数实现不同站点之间注册用户的同步

标签:ror   errno   返回   站点   16px   cookies   use   pos   err   

原文地址:http://www.cnblogs.com/afee666/p/6845301.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!