Home > Backend Development > PHP Problem > How to use PHP to implement the function of scanning QQ code to obtain QQ number

How to use PHP to implement the function of scanning QQ code to obtain QQ number

PHPz
Release: 2023-04-06 12:58:02
Original
2250 people have browsed it

With the popularity of mobile Internet and social media, more and more websites and APPs choose to use QQ account login method to facilitate users. In order to facilitate everyone to quickly obtain a QQ number, this article will introduce how to use PHP to implement the function of scanning the QQ code to obtain a QQ number.

1. QQ code scanning principle

QQ code scanning login is a quick login method launched by Tencent. You can log in by scanning the QR code. When scanning the code, the user's browser will send an authentication request to the QQ server. The QQ server will use the user's QQ account as an identifier and return a Token to the browser. The browser will then send the Token to the website server. The website server sends the Token to the QQ server for verification. After the verification is successful, the website server can obtain the user's information and realize the login function.

2. Obtain the QQ QR code

Using PHP to implement QQ scan code login, you first need to obtain the QQ QR code. Here we can call the API interface of Tencent Open Platform. The sample code is as follows:

<?php
  $url = "https://graph.qq.com/oauth2.0/show?which=login&display=pc&response_type=code&client_id=YOUR_APPID&redirect_uri=YOUR_CALLBACK_URL&state=STATE";
  echo "<img src=&#39;".$url."&#39; />";
?>
Copy after login

In the above code, we need to replace our own APPID and callback address. The code will print out the generated image, which the user can scan to log in.

3. Obtain QQ account information

After the user scans the QR code, he will enter the QQ login page and enter the account password for verification. After the verification is passed, an Authorization Code will be returned. This Code is the necessary parameter for us to call the API to obtain the user's OpenID and AccessToken.

Code example of using PHP to obtain QQ account information:

<?php

  $app_id = "YOUR_APPID";
  $app_key = "YOUR_APPKEY";
  $redirect_uri = "YOUR_CALLBACK_URL";
  $code = $_GET["code"];

  $url = "https://graph.qq.com/oauth2.0/token?grant_type=authorization_code&client_id=".$app_id."&client_secret=".$app_key."&code=".$code."&redirect_uri=".$redirect_uri;

  $res = file_get_contents($url);
  parse_str($res, $data);

  $access_token = $data[&#39;access_token&#39;];

  $url = "https://graph.qq.com/oauth2.0/me?access_token=".$access_token;

  $res = file_get_contents($url);

  $pos = strpos($res, "(");
  $res = substr($res, $pos+1);
  $pos = strrpos($res, ")");
  $res = substr($res, 0, $pos);

  $data = json_decode($res);

  $openid = $data->openid;
?>
Copy after login

In the above code, we need to replace our own APPID, APPKEY and callback address. This code will be called through the API interface to obtain the user's OpenID. After obtaining the OpenID, we can obtain the user's detailed information by calling the QQ user information API interface.

4. Summary

Through the above introduction, we can find that it is not very difficult to use PHP to implement QQ scan code login. You only need to call the corresponding API interface. In actual applications, we may need to process the returned data in more detail and combine it with web front-end technology to achieve a better user experience.

The above is the detailed content of How to use PHP to implement the function of scanning QQ code to obtain QQ number. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template