PHP에서 WeChat 로그인을 구현하는 방법: 1. 사용자의 동의를 얻어 인증하고 코드를 얻습니다. 2. 웹페이지 인증 access_token에 대한 코드를 교환합니다. 3. 사용자 정보를 얻습니다.
이 기사의 운영 환경: windows10 시스템, php 7, thinkpad t480 컴퓨터.
php를 사용하여 WeChat에 로그인하는 것은 어렵지 않습니다. 아래와 같이 간단하게 세 단계로 나눌 수 있습니다.
1단계: 사용자가 코드 승인 및 획득에 동의합니다
//微信登录 public function wxlogin() { $appid = ""; $secret = ""; $str="http://***.***.com/getToken"; $redirect_uri=urlencode($str); //通过code获得 access_token + openid $url="https://open.weixin.qq.com/connect/oauth2/authorize?appid=".$appid."&redirect_uri=".$redirect_uri."&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect"; header("Location:" . $url); }
2단계: 웹페이지 승인을 위한 코드 access_token
public function getToken() { $code = $_GET["code"]; $appid = ""; $secret = ""; //通过code获得 access_token + openid $url="https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$appid ."&secret=" . $secret . "&code=" . $code . "&grant_type=authorization_code"; $jsonResult =$this->https_request($url); $resultArray = json_decode($jsonResult, true); $access_token = $resultArray["access_token"]; $openid = $resultArray["openid"]; //第三步 获取用户信息 //通过access_token + openid 获得用户所有信息,结果全部存储在$infoArray里,后面再写自己的代码逻辑 $infoUrl = "https://api.weixin.qq.com/sns/userinfo?access_token=" . $access_token . "&openid=" . $openid.'&lang=zh_CN'; $infoResult = $this->https_request($infoUrl); $infoArray = json_decode($infoResult, true); if($infoArray['unionid']) { } }
추가: 코드에 사용된 메소드
// An highlighted block function https_request($url, $data = null) { $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); if (!empty($data)){ curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $data); } curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $output = curl_exec($curl); curl_close($curl); return $output; }
추천 학습: php training
위 내용은 PHP에서 WeChat 로그인을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!