广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >php怎么实现微信扫码登录
  • 722
分享到

php怎么实现微信扫码登录

php微信 2018-06-26 22:06:11 722人浏览 猪猪侠
摘要

本文操作环境:windows10系统、PHP 7、thinkpad t480电脑。微信已经成为我们日常生活中必不可少的一部分,为了让更多的用户更加方便地使用微信及相关产品,微信扫一扫功能越来越普遍。那么如果我们要自己实现这个功能该如何做呢?

本文操作环境:windows10系统、PHP 7、thinkpad t480电脑。

微信已经成为我们日常生活中必不可少的一部分,为了让更多的用户更加方便地使用微信及相关产品,微信扫一扫功能越来越普遍。那么如果我们要自己实现这个功能该如何做呢?

再给出具体的实现代码之前,我们先来分析下微信扫码登录的流程。

首先我们必须要把二维码放在页面上显示出来,二维码是有失效时间以及失效状态的,一旦你扫过一次二维码或者在某段时间内没有扫描页面上的二维码,那么这个二维码也就失效了。微信官网给我们提供了两种方式来显示二维码,一种是后台发请求返回一个新的页面,另一种是前端js实例化二维码内嵌在自己的页面上。很显然第一种方式比较简单方便,但是在实际的项目中两种方式都会使用到,既然如此我们就把这两种方式都说明一下。

后台发请求获取微信返回的扫码页面

$redirect_uri="Http://你的微信开放平台绑定域名下处理扫码事件的方法";
$redirect_uri=urlencode($redirect_uri);//该回调需要url编码
$appID="你的appid";
$scope="snsapi_login";//写死,微信暂时只支持这个值
//准备向微信发请求
$url = "https://open.weixin.qq.com/connect/qrconnect?appid=" . $appID."&redirect_uri=".$redirect_uri."&response_type=code&scope=".$scope."&state=STATE#wechat_redirect";
//请求返回的结果(实际上是个html字符串)
$result = file_get_contents($url);
//替换图片的src才能显示二维码
$result = str_replace("/connect/qrcode/", "https://open.weixin.qq.com/connect/qrcode/", $result);
return $result; //返回页面

这样子就会返回一个这样的页面,扫描后调用$redirect_uri

da6c1c1e556dde4df850c8d04c1f556.png

内嵌JS显示:

这里就是通过js端实例化一个对象即可,首先在<head>标签内添加如下js文件,

<script src="http://res.wx.qq.com/connect/zh_CN/htmledition/js/wxLogin.js"></script>

其次在html中定义一个div包含二维码,

<div id="login_container"></div>

最后在$(document).ready()内进行实例化: 

$(document).ready(function()
{
    var obj = new WxLogin
    ({
        id:"login_container",//div的id
        appid: "你的appid",
        scope: "snsapi_login",//写死
        redirect_uri:encodeURI("你的处理扫码事件的方法") ,
        state: "",
        style: "black",//二维码黑白风格        
        href: "https://某个域名下的CSS文件"
    });
});

注意其中href里指向的css文件必须放在https协议下才能引用的到,不然页面上就是默认样式(显示上是一个比较大的二维码,你无法调节二维码的大小,位置,太痛苦了)。最后部分页面大概长成这样,这里的二维码大概只有140px:

506b24882f9692bf80fb87e653e9421.png

好了,二维码出现在页面上了,接下来我们就要大概的讲讲扫码的逻辑了,整个流程大概分为5步:

5600c4fb5c927be8d3ff7166b022591.png

走完这五步你就拿到扫码用户的所有信息了,之后再写上自己需要的的代码逻辑即可(如重定向或者登陆),在代码里的表现形式如下:

//回调
public function codeinfo()
{
        $code = $_GET["code"];
        $appid = "你的appid";
        $secret = "你的secret";
        if (!empty($code))  //有code
        {
            //通过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 = file_get_contents($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;
            $infoResult = file_get_contents($infoUrl);
            $infoArray = json_decode($infoResult, true);
     } }

相信大家在写完上面的代码之后已经对扫一扫登录的流程很清楚了,其实本质上就是多个微信接口的配合调用而已。

--结束END--

本文标题: php怎么实现微信扫码登录

本文链接: https://www.lsjlt.com/news/131.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • php怎么实现微信扫码登录
    本文操作环境:windows10系统、php 7、thinkpad t480电脑。微信已经成为我们日常生活中必不可少的一部分,为了让更多的用户更加方便地使用微信及相关产品,微信扫一扫功能越来越普遍。那么如果我们要自己实现这个功能该如何做呢?...
    99+
    2018-06-26
    php 微信
  • Java实现微信扫码登录
    微信扫码登录 1. 授权流程说明第一步:请求 code第二步:通过 code 获取 access_token第三步:通过 access_token 调用接口 2. 授权流程代码3...
    99+
    2023-09-01
    微信 java
  • 怎么使用PHP实现微信扫码登录功能
    这篇文章主要讲解了“怎么使用PHP实现微信扫码登录功能”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用PHP实现微信扫码登录功能”吧!一、准备工作在开始实现微信扫码登录功能之前,我们需...
    99+
    2023-07-05
  • Spring Boot怎么实现微信扫码登录功能
    本文小编为大家详细介绍“Spring Boot怎么实现微信扫码登录功能”,内容详细,步骤清晰,细节处理妥当,希望这篇“Spring Boot怎么实现微信扫码登录功能”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一...
    99+
    2023-06-30
  • 不扫码怎么登录电脑微信
    这篇文章主要讲解了“不扫码怎么登录电脑微信”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“不扫码怎么登录电脑微信”吧!不扫码登录电脑微信的方法:如果要登录电脑版微信,一定是要扫码的。 不过手机...
    99+
    2023-07-02
  • 如何使用PHP实现微信扫码登录功能
    随着移动互联网的快速发展,微信作为一种重要的社交工具,已经逐渐成为人们日常生活中必不可少的一个部分。在许多网站和应用程序中,微信登录功能已经成为了一种趋势,因为它可以让用户直接使用已有的微信账号来登录,不需要再创建新的账户,同时也能提供更便...
    99+
    2023-05-14
    微信扫码登录 php
  • vue3怎么实现微信扫码登录及获取个人信息
    本篇内容介绍了“vue3怎么实现微信扫码登录及获取个人信息”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、流程:微信提供的扫码方式有两种,...
    99+
    2023-07-05
  • PHP实现微信关注公众号扫码登录功能
    PHP微信扫码登录看起来简单,但做起来有点复杂,微信接口的坑有点多,稍不注意,就费很多时间。PHP判断是否首次关注公众号,扫码关注公众号获取微信用户头像、openid和省市等信息源码。        ...
    99+
    2023-06-05
  • PHP怎么实现扫码登录QQ
    本教程操作环境:Windows7系统、PHP8.1版、Dell G3电脑。PHP怎么实现扫码登录QQ?分享一下,PHP实现第四方QQ微信扫码登陆,不接入qq互联以及微信开发者平台就可以实现用户对接鹅厂,phpQQ微信扫码登陆 自己抓的QQ包...
    99+
    2022-11-21
    qq php
  • php怎么实现微信登录
    本文操作环境:windows10系统、php 7、thinkpad t480电脑。使用php实现微信登录其实并不难,可以简单地分为三步进行,如下所示:第一步:用户同意授权,获取code//微信登录 public function wxlo...
    99+
    2019-09-04
    php 微信
  • 企业微信扫码登录网页功能实现代码
    企业微信扫码登录网页功能,代码如下所示: //jq写法完善版 <!DOCTYPE html> <html lang="en"> <head> ...
    99+
    2022-11-13
    企业微信扫码登录网页 企业微信扫码登录
  • PHP实现微信扫码登录功能的两种方式总结
    官方文档 微信扫码登录目前有两种方式: 1:在微信作用域执行 ,就是条一个新页面 前端点击一个按钮,请求后端接口条微信作用域 后端php代码如下: $redirect_ur...
    99+
    2022-11-13
    PHP微信扫码登录 PHP 扫码登录 PHP 微信登录
  • php对接微信公众号扫码登录开发实录(H5微信扫描登录、服务出现故障调试、模版消息设置、扫码轮询交互)
    微信公众号扫码登录开发实录 前言一、服务器配置1.微信公众号配置2.本地服务器验证程序 二、生成登录二维码1.生成微信登录二维码2.封装成便于刷新的函数 三、扫码验证和交互四、模版消息...
    99+
    2023-10-06
    微信 php 开发语言
  • Spring Boot实现微信扫码登录功能流程分析
    目录1. 授权流程说明第一步:请求CODE第二步:通过code获取access_token第三步:通过access_token调用接口2. 授权流程代码3. 用户登录和登出4. Sp...
    99+
    2022-11-13
    Spring Boot微信扫码登录 Spring Boot微信扫码 Spring Boot扫码登录
  • vue3如何实现微信扫码登录及获取个人信息
    这篇文章主要讲解了“vue3如何实现微信扫码登录及获取个人信息”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“vue3如何实现微信扫码登录及获取个人信息”吧!一、流程:微信提供的扫码方式有两种...
    99+
    2023-07-06
  • PHP 实现微信Native扫码支付
    目录 一、安装微信SDK 二、准备请求资料 三、引入和定义 四、Native下单 五、Native调起支付 六、Native异步通知 一、安装微信SDK composer require wechatpay/wech...
    99+
    2023-09-25
    开发语言 php 微信 thinkphp
  • PHP如何实现扫码登录QQ
    这篇文章主要介绍“PHP如何实现扫码登录QQ”,在日常操作中,相信很多人在PHP如何实现扫码登录QQ问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PHP如何实现扫码登录QQ”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-07-04
  • SpringBoot怎么实现二维码扫码登录
    本篇内容介绍了“SpringBoot怎么实现二维码扫码登录”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、手机扫二维码登录的原理二维码扫码...
    99+
    2023-07-05
  • 微信扫码登录原理的示例分析
    小编给大家分享一下微信扫码登录原理的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!微信扫码登录原理解析扫码登录是现在流行...
    99+
    2022-10-19
    微信开发
  • 网站使用微信小程序扫码登录的实现方法
    前言 传统网站一般都会使用账号密码登录,但这种方式总有用户会忘记密码,找回密码需要一系列验证,也挺麻烦的,于是学习了一下扫码登录,这种方式不仅不会有忘记密码的烦恼,登录还十分快捷。用户体验较好. ...
    99+
    2023-09-20
    微信小程序 小程序 前端
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作