本文整理汇总了PHP中Wechat::get_user_info方法的典型用法代码示例。如果您正苦于以下问题:PHP Wechat::get_user_info方法的具体用法?PHP Wechat::get_user_info怎么用?PHP Wechat::get_user_info使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Wechat
的用法示例。
在下文中一共展示了Wechat::get_user_info方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: index
public function index()
{
if (!session('openid_' . $this->token)) {
$this->info = M('wxuser')->where(array('token' => $this->token))->find();
vendor("Oauth2.OAuth2", LIB_PATH . '../Extend/Vendor');
vendor("Oauth2.Provider.Wechat", LIB_PATH . '../Extend/Vendor');
$wechat = new Wechat();
$wechat->config(array('id' => $this->info['appid'], 'secret' => $this->info['appsecret']));
$redirect_uri = C('site_url') . '/index.php/Wap/Coupons/index?token=' . $this->token . '&coupon_id=' . $this->coupon_id;
if (!$_GET['code']) {
// By sending no options it'll come back here
$url = $wechat->authorize(array('redirect_uri' => $redirect_uri));
redirect($url);
} else {
try {
// Have a go at creating an access token from the code
$token = $wechat->access($_GET['code'], array('redirect_uri' => $redirect_uri));
// Use this object to try and get some user details (username, full name, etc)
$user = $wechat->get_user_info($token);
$this->openid = $user->openid;
session('openid_' . $this->token, $user->openid);
} catch (OAuth2_Exception $e) {
print_r($e);
die;
}
}
} else {
$this->openid = session('openid_' . $this->token);
}
$url = C('site_url') . "/index.php?g=Wap&m=Coupon&a=index&type=1&token=" . $this->token . '&id=' . $this->coupon_id . '&wecha_id=' . $this->openid;
header('Location:' . $url);
}
示例2: index
function index()
{
if (!session('openid_' . $this->token)) {
$this->info = M('wxuser')->where(array('token' => $this->token))->find();
vendor("Oauth2.OAuth2", LIB_PATH . '../Extend/Vendor');
vendor("Oauth2.Provider.Wechat", LIB_PATH . '../Extend/Vendor');
$wechat = new Wechat();
$wechat->config(array('id' => $this->info['appid'], 'secret' => $this->info['appsecret']));
$redirect_uri = C('site_url') . '/index.php/Wap/Login/index?token=' . $this->token . '&url=' . $this->url;
if (!$_GET['code']) {
// By sending no options it'll come back here
$url = $wechat->authorize(array('redirect_uri' => $redirect_uri));
redirect($url);
} else {
try {
// Have a go at creating an access token from the code
$access_token = $wechat->access($_GET['code'], array('redirect_uri' => $redirect_uri));
// Use this object to try and get some user details (username, full name, etc)
$user = $wechat->get_user_info($access_token);
$this->save_wechat_user($user);
session('openid_' . $this->token, $user->openid);
} catch (OAuth2_Exception $e) {
print_r($e);
die;
}
}
}
if ($this->url) {
redirect($this->url);
}
}
示例3: Oauth2
public function Oauth2()
{
if (!session('openid_' . $this->token)) {
$this->info = M('wxuser')->where(array('token' => $this->token))->find();
vendor("Oauth2.OAuth2", LIB_PATH . '../Extend/Vendor');
vendor("Oauth2.Provider.Wechat", LIB_PATH . '../Extend/Vendor');
$wechat = new Wechat();
$wechat->config(array('id' => $this->info['appid'], 'secret' => $this->info['appsecret']));
$redirect_uri = $_GET['method_name'];
if (!$_GET['code']) {
$redirect_uri = C('site_url') . '/index.php/Fxs/Fxs/Oauth2?token=' . $this->token . '&method_name=' . $_GET['method_name'];
// By sending no options it'll come back here
$url = $wechat->authorize(array('redirect_uri' => $redirect_uri));
redirect($url);
} else {
try {
// Have a go at creating an access token from the code
$token = $wechat->access($_GET['code'], array('method_name' => $redirect_uri));
// Use this object to try and get some user details (username, full name, etc)
$user = $wechat->get_user_info($token);
session('openid_' . $this->token, $user->openid);
} catch (OAuth2_Exception $e) {
print_r($e);
die;
}
}
}
if (session('openid_' . $this->token)) {
$user = M('reguser')->where(array('token' => $this->token, 'openid' => session('openid_' . $this->token)))->find();
if (!$user) {
session_destroy();
}
}
header('Location:' . U('Fxs/' . $_GET['method_name'], array('token' => $this->token)));
}
示例4: indexOp
function indexOp()
{
$model_member = Model('member');
$wxinfo = $model_member->get_wx_config();
if (empty($wxinfo)) {
showDialog('您还没有配置微信基本参数appid,appsecret!');
}
$wechat = new Wechat($wxinfo['appid'], $wxinfo['appsecret'], 'snsapi_base');
if (!isset($_GET['code'])) {
$redirect_uri = SHOP_SITE_URL . '/index.php?act=wxuser';
$url = $wechat->get_code_url($redirect_uri);
header("Location: {$url}");
} else {
$code = $_GET['code'];
}
if (empty($code)) {
showDialog('授权获取code失败');
}
$oauth = json_decode($wechat->get_oauth_token($code));
$return_url = SHOP_SITE_URL . '/index.php?act=wap_index';
if (isset($oauth->access_token) && isset($oauth->openid)) {
$user = json_decode($wechat->get_user_info($oauth->openid, $oauth->access_token));
try {
if (!$user->openid) {
throw new Exception('未获取到微信用户的基本信息');
}
$openid = $user->openid;
$wxusers = $model_member->get_wx_user($openid);
if ($wxusers && $wxusers[0]) {
$model_member->createSession($wxusers[0]);
header("Location:{$return_url}");
exit;
}
$model_member->beginTransaction();
$params['openid'] = $openid;
$params['nickname'] = $user->nickname;
$params['sex'] = $user->sex;
$params['headimgurl'] = $user->headimgurl;
$params['city'] = $user->city;
$params['province'] = $user->province;
$params['country'] = $user->country;
$params['userinfo'] = json_encode($user);
$params['create_time'] = date('Y-m-d H:i:s');
$params['update_time'] = date('Y-m-d H:i:s');
$wx_users_id = $model_member->addWxUser($params);
if ($wx_users_id) {
$count = $model_member->get_member_count();
$insert_array = array();
$insert_array['member_name'] = 'uk_wx_' . $count;
$insert_array['member_passwd'] = md5('123456');
$insert_array['member_email'] = $insert_array['member_name'] . '@xx.xx';
$insert_array['member_email_bind'] = 1;
$insert_array['member_time'] = time();
$insert_array['member_login_time'] = $insert_array['member_time'];
$insert_array['member_points'] = 20;
$insert_array['member_login_ip'] = uk86_getIp();
$insert_array['member_sex'] = $params['sex'];
$insert_array['wx_users_id'] = $wx_users_id;
$result = Model('member')->insert($insert_array);
if (empty($result)) {
throw new Exception('注册用户失败');
}
$member_info = $model_member->getMemberInfo(array('member_name' => $insert_array['member_name'], 'member_passwd' => $insert_array['member_passwd']));
if (!empty($member_info) && is_array($member_info)) {
//会员信息写入session
$model_member->createSession($member_info);
} else {
throw new Exception('未获取到用户注册信息');
}
} else {
throw new Exception('微信用户信息添加失败');
}
$model_member->commit();
header("Location:{$return_url}");
} catch (Exception $e) {
$model_member->rollback();
showDialog($e->getMessage());
}
} else {
showDialog('获取信息失败', $return_url);
}
}