/**
  * 微信注册
  */
 public function login()
 {
     $code = I('get.code', '');
     addLog("Weixin/login", $_GET, $_POST, "调用微信登录接口CODE=" . $code);
     $service = new WeixinService($this->appid, $this->appsecret);
     $result = $service->getUserInfo($code);
     if (!$result['status']) {
         $this->apiReturnErr($result['info']);
     }
     $weixin_userinfo = $result['info'];
     addLog("Weixin/login", $weixin_userinfo, $weixin_userinfo, "微信登录拉取的用户信息");
     //注册用户账户
     /*
              *
              *  ["openid"] => string(28) "ooQDbsnArKx1iBCUp05EfFeOP8f0"
         ["nickname"] => string(19) "老胖子-何必都"
         ["sex"] => int(1)
         ["language"] => string(5) "zh_CN"
         ["city"] => string(8) "Hangzhou"
         ["province"] => string(8) "Zhejiang"
         ["country"] => string(2) "CN"
         ["headimgurl"] => string(129) "http://wx.qlogo.cn/mmopen/HqJEBzbSXQqNzVkND8UsQ8Ric4XkkCNfeVWYT71lAM6ZxuhRhicZdXB3HR5ibc2SsWmXt1ptdbibL6Xk0tjJWJ7MJS8vNE87iaSb6/0"
         ["privilege"] => array(0) {
         }
         ["unionid"] => string(28) "o_4WajjRYUsu6qM3Fn3NvnctZrg0"
              *
              * */
     $openid = $weixin_userinfo['openid'];
     $password = "******";
     $nickname = $weixin_userinfo['nickname'];
     $sex = $weixin_userinfo['sex'];
     $city = $weixin_userinfo['city'];
     $province = $weixin_userinfo['province'];
     $country = $weixin_userinfo['country'];
     $head = $weixin_userinfo['headimgurl'];
     $idcode = getIDCode(rand(10000000000, 99999999999), 'X');
     $result = apiCall(AccountApi::GET_INFO_BY_WXOPENID, array($openid));
     addLog("Weixin/login", $result, $result, "微信登录拉取的用户信息");
     //如果已经存在,则返回信息
     if ($result['status'] && is_array($result['info'])) {
         $result['info'] = $this->convert($result['info']);
         $this->apiReturnSuc($result['info']);
     } elseif ($result['status'] === false) {
         $this->apiReturnErr($result['info']);
     }
     $entity = array('type' => UcenterMemberModel::ACCOUNT_TYPE_USERNAME, 'username' => $openid, 'password' => $password, 'from' => OAuth2TypeModel::WEIXIN, 'mobile' => '', 'realname' => '', 'nickname' => $nickname, 'email' => '', 'idnumber' => '', 'birthday' => time(), 'idcode' => $idcode, 'head' => $head, 'weixin_bind' => 1, 'wxopenid' => $openid);
     $result = apiCall(AccountApi::REGISTER, array($entity));
     if ($result['status']) {
         $uid = $result['info'];
         if ($uid > 0) {
             $result = apiCall(AccountApi::GET_INFO, array($uid));
             action_log("api_user_login", "common_member", $uid, $uid);
             if ($result['status']) {
                 $this->apiReturnSuc($result['info']);
             }
         }
     }
     $this->apiReturnErr($result['info']);
 }
 public function test()
 {
     $access_token = "OezXcEiiBSKSxW0eoylIeLL__w8mh9_H1IFEtNHG8D2z6hbexaHPFPMffNopjx5onqFQjX4jHlPEPc8GQus44d0931Ra874-icp1HpDHhoL3GE8OeoKW9OPoS7sOjlLKeOQUfLO7YzYNEGcmtvKGPw";
     $openid = "ooQDbsnArKx1iBCUp05EfFeOP8f0";
     $unionid = "o_4WajjRYUsu6qM3Fn3NvnctZrg0";
     $service = new WeixinService($appid, $appsecret);
     $result = $service->getUserInfoBy($access_token, $openid);
     dump($result);
 }