qq 로그인
<?php
// =============qq ( )==============
$qq = new QQ;
if( !isset($_GET['code']) ){
$qq->login();
}else{
$qq->access_token($_GET['code']);
$qq->get_user_info(); // 。
}
class QQ{
private $appid,$appkey,$redirect_uri,$access_token,$openid,$img;
public function __construct(){
$this->appid = "";
$this->appkey = "";
$this->redirect_uri = "http://www.useryx.net";
$this->img = "./qq_login.png"; // qq
echo '<html>
<head>
<meta charset="UTF-8">
<meta property="qc:admins" content="126626657765352106654" />
</head>
<body>';
}
//
public function html($url){
//
echo '<a href="'.$url.'"><img src="'.$this->img.'" alt="QQ "></a>';
}
// qq ,
public function login(){
// $this->ceshi(); exit; // 。 。
$url = "https://graph.qq.com/oauth2.0/authorize";
$array = array(
"response_type" => "code",
"client_id" => $this->appid,
"redirect_uri" => $this->redirect_uri,
"state" => time(),
"scope" => "get_user_info,get_info,add_t,del_t,add_pic_t,get_repost_list,get_other_info,get_fanslist,get_idollist,add_idol,del_idol", // 。
);
$url = $url.'?'.http_build_query($array);
$this->html($url);
}
public function access_token($code){
$url = "https://graph.qq.com/oauth2.0/token";
$array = array(
"grant_type" => "authorization_code",
"client_id" => $this->appid,
"client_secret" => $this->appkey,
"code" => $code,
"redirect_uri" => $this->redirect_uri,
);
$url = $url.'?'.http_build_query($array);
$token = file_get_contents($url);
// token,
$a = explode("&",$token);
for ($i=0; $i < count($a); $i++) {
$ar = explode("=",$a[$i]);
$arr[$ar[0]] = $ar[1];
}
$this->access_token = $arr['access_token'];
$this->openid();
}
// 。
public function openid(){
$url = "https://graph.qq.com/oauth2.0/me?access_token=$this->access_token";
$str = file_get_contents($url);
//
preg_match("/{.*}/i",$str,$m);
$user = json_decode($m[0],true);
// echo '<pre> :<br>';
// print_r($user);
// echo '<pre>';
$this->openid = $user['openid'];
}
public function get_user_info(){
$url = "https://graph.qq.com/user/get_user_info?";
$array = array(
"access_token" => $this->access_token,
"oauth_consumer_key" => $this->appid,
"openid" => $this->openid,
);
$get_user_info = file_get_contents($url.http_build_query($array));
$get_user_info = json_decode($get_user_info,true);
echo '<pre>';
print_r($get_user_info);
}
//
public function __destruct(){
echo "</body> </html>";
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.