Heim >php教程 >PHP源码 >Ecshop微信第三方授权扫码登录接口文件源码

Ecshop微信第三方授权扫码登录接口文件源码

PHP中文网
PHP中文网Original
2016-05-26 08:20:111802Durchsuche

[PHP]代码 

<?php 
/***************************/
/* Wechat 登录              /
/* by tiandi 2014.12.6      /
/***************************/  

if (defined(&#39;WEBSITE&#39;) || defined(&#39;GETINFO&#39;))
{
	global $_LANG;
	$_LANG[&#39;help&#39;][&#39;APP_KEY&#39;] = &#39;在微信开发者平台申请的AppID&#39;;
	$_LANG[&#39;help&#39;][&#39;APP_SECRET&#39;] = &#39;在微信开发者平台申请的AppSecret&#39;;
	
	$_LANG[&#39;APP_KEY&#39;] = &#39;AppID&#39;;
	$_LANG[&#39;APP_SECRET&#39;] = &#39;AppSecret&#39;;
	
	$i = isset($web) ? count($web) : 0;
	// 类名
	$web[$i][&#39;name&#39;] = &#39;wechat&#39;;
	// 文件名,不包含后缀
	$web[$i][&#39;type&#39;] = &#39;wechat&#39;;
	
	$web[$i][&#39;className&#39;] = &#39;wechat&#39;;
	
	// 作者信息
	$web[$i][&#39;author&#39;] = &#39;tiandi&#39;;
	
	// 作者QQ
	$web[$i][&#39;qq&#39;] = &#39;&#39;;
	
	// 作者邮箱
	$web[$i][&#39;email&#39;] = &#39;&#39;;
	
	// 申请网址
	$web[$i][&#39;website&#39;] = &#39;http://open.weixin.qq.com&#39;;
	
	// 版本号
	$web[$i][&#39;version&#39;] = &#39;1.0&#39;;
	
	// 更新日期
	$web[$i][&#39;date&#39;]  = &#39;2014-12-6&#39;;
	
	// 配置信息
	$web[$i][&#39;config&#39;] = array(
		array(&#39;type&#39;=>&#39;text&#39; , &#39;name&#39;=>&#39;APP_KEY&#39;, &#39;value&#39;=>&#39;&#39;),
		array(&#39;type&#39;=>&#39;text&#39; , &#39;name&#39; => &#39;APP_SECRET&#39; , &#39;value&#39; => &#39;&#39;),
	);
}


if (!defined(&#39;WEBSITE&#39;))
{
	include_once(dirname(__FILE__).&#39;/oath2.class.php&#39;);
	class website extends oath2
	{
		function website()
		{
			$this->app_key = APP_KEY;
			$this->app_secret = APP_SECRET;
			
			$this->scope = &#39;snsapi_login&#39;;
			//by tiandi authorizeURL是用来PHP打开微信登录时用,JS调用则不用authorizeURL。
			$this->authorizeURL = &#39;https://open.weixin.qq.com/connect/qrconnect&#39;;

			$this->tokenURL = &#39;https://api.weixin.qq.com/sns/oauth2/access_token&#39;;
			$this->refreshtokenURL = &#39;https://api.weixin.qq.com/sns/oauth2/refresh_token&#39;;
			$this->userURL = &#39;https://api.weixin.qq.com/sns/userinfo&#39;;
			$this->meth = &#39;GET&#39;;
		}

		function Code2Token($code)
		{
			$params  = &#39;appid=&#39;.$this->app_key.&#39;&secret=&#39;.$this->app_secret.&#39;&code=&#39;.$code.
				&#39;&grant_type=authorization_code&#39;;
			$tokenurl = $this->tokenURL."?". $params;
			$token = $this->http($tokenurl, &#39;GET&#39;);
			$token = json_decode($token , true);
			return $token;
		}

		function GetRefreshToken($token)
		{
			$params  = &#39;appid=&#39;.$this->app_key.&#39;&grant_type=refresh_token&refresh_token=&#39;.$token;
			$tokenurl = $this->refreshtokenURL."?". $params;
			$token = $this->http($tokenurl, &#39;GET&#39;);
			$token = json_decode($token , true);
			return $token;
		}
		
		function Getinfo($token,$openid)
		{
			$params = &#39;access_token=&#39;.$token.&#39;&openid=&#39;.$openid;
			$userurl = $this->userURL."?". $params;
			$userinfo = $this->http($userurl, &#39;GET&#39;);
			return json_decode($userinfo , true);
		}
	}
}

                   

                   

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn