php版微信公众平台开发之验证步骤实例详解


Posted in PHP onSeptember 23, 2016

本文实例讲述了php版微信公众平台开发之验证步骤。分享给大家供大家参考,具体如下:

微信公众平台开发我们现在做得比较多了,这里给各位介绍的是一个入门级别的微信公众平台验证基础知识了,有兴趣的和小编来看看。

开发微信的时候 需要验证一下,在官方开发者中心哪里有可以下源代码,登录到 公众帐号后 看到左边的最下角有一个开发者中心点击,然后填写上你相对应的 Token 和 url 然后就可以验证成功的话就可以开发了.

下载微信php验证源代码在 开发者中心 - 开发者文档 - 接口消息 - 验证消息真实 - 拉到最下面就php演示代码.

下载好后代码如下:

<?php
/**
 * wechat php test
 * update time: 20141008
 */
//define your token
define("TOKEN", "weixin");
$wechatObj = new wechatCallbackapiTest();
$wechatObj->valid();
class wechatCallbackapiTest
{
 public function valid()
 {
  $echoStr = $_GET["echostr"];
  //valid signature , option
  if($this->checkSignature()){
  echo $echoStr;
  exit;
  }
 }
 public function responseMsg()
 {
 //get post data, May be due to the different environments
 $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
  //extract post data
 if (!emptyempty($postStr)){
    $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
    $fromUsername = $postObj->FromUserName;
    $toUsername = $postObj->ToUserName;
    $keyword = trim($postObj->Content);
    $time = time();
    $textTpl = "<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
<FuncFlag>0</FuncFlag>
</xml>";
if(!emptyempty( $keyword ))
    {
    $msgType = "text";
    $contentStr = "Welcome to wechat world!";
    $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
    echo $resultStr;
    }else{
    echo "Input something...";
    }
  }else {
  echo "";
  exit;
  }
 }
private function checkSignature()
{
  $signature = $_GET["signature"];
  $timestamp = $_GET["timestamp"];
  $nonce = $_GET["nonce"];
$token = TOKEN;
$tmpArr = array($token, $timestamp, $nonce);
  sort($tmpArr, SORT_STRING);
$tmpStr = implode( $tmpArr );
$tmpStr = sha1( $tmpStr );
if( $tmpStr == $signature ){
return true;
}else{
return false;
}
}
}
?>

其中:TOKEN 修改为你自己想要的 然后在 开发者中心也要写一样的,在验证的过程中 $wechatObj->valid(); 这段代码不能去除这个是验证,验证成功后 我们就可以把 这段 $wechatObj->valid(); 这个注释掉了,然后使用 $wechatObj->responseMsg(); 来进行测试

注意:在开发的时候需要把 $wechatObj->valid(); 给注释掉,不然在手机测试的时候 会没有显示什么.

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php过滤危险html代码
Aug 18 PHP
PHP乱码问题,UTF-8乱码常见问题小结
Apr 09 PHP
php控制linux服务器常用功能 关机 重启 开新站点等
Sep 05 PHP
php中单个数据库字段多列显示(单字段分页、横向输出)
Jul 28 PHP
php中$_GET与$_POST过滤sql注入的方法
Nov 03 PHP
PHP Hash算法:Times33算法代码实例
May 13 PHP
php搜索文件程序分享
Oct 30 PHP
Yii2增删改查之查询 where参数详细介绍
Aug 08 PHP
ThinkPHP5框架实现简单的批量查询功能示例
Jun 07 PHP
PHP生成随机码的思路与方法实例探索
Apr 11 PHP
PHP7使用ODBC连接SQL Server2008 R2数据库示例【基于thinkPHP5.1框架】
May 06 PHP
PHP后门隐藏的一些技巧总结
Nov 04 PHP
php分页原理 分页代码 分页类制作教程
Sep 23 #PHP
php使用glob函数遍历文件和目录详解
Sep 23 #PHP
php版微信发红包接口用法示例
Sep 23 #PHP
基于thinkPHP实现的微信自定义分享功能示例
Sep 23 #PHP
php版微信自动登录并获取昵称的方法
Sep 23 #PHP
php中使用websocket详解
Sep 23 #PHP
PHP用FTP类上传文件视频等的简单实现方法
Sep 23 #PHP
You might like
探究Laravel使用env函数读取环境变量为null的问题
2016/12/06 PHP
PHP使用curl_multi实现并发请求的方法示例
2018/04/29 PHP
JS调用CS里的带参方法实例
2013/08/01 Javascript
仿新浪微博登陆邮箱提示效果的js代码
2013/08/02 Javascript
多种方法实现360浏览器下禁止自动填写用户名密码
2014/06/16 Javascript
javascript中hasOwnProperty() 方法使用指南
2015/03/09 Javascript
jQuery实现延迟跳转的方法
2015/06/05 Javascript
浅析javascript的return语句
2015/12/15 Javascript
AngularJS中$apply方法和$watch方法用法总结
2016/12/13 Javascript
javascript 判断一个对象为数组的方法
2017/05/03 Javascript
vue项目打包后怎样优雅的解决跨域
2019/05/26 Javascript
vue-cli3 热更新配置操作
2020/09/18 Javascript
[03:46]DOTA2英雄基础教程 维萨吉
2013/12/11 DOTA
[01:25]DOTA2自定义游戏灵园鬼域等你踏足
2015/10/30 DOTA
使用Python中的greenlet包实现并发编程的入门教程
2015/04/16 Python
python的变量与赋值详细分析
2017/11/08 Python
python 实现将字典dict、列表list中的中文正常显示方法
2018/07/06 Python
详解pandas使用drop_duplicates去除DataFrame重复项参数
2019/08/01 Python
Python sqlite3查询操作过程解析
2020/02/20 Python
Python坐标轴操作及设置代码实例
2020/06/04 Python
Pytorch 解决自定义子Module .cuda() tensor失败的问题
2020/06/23 Python
HTML5添加鼠标悬浮音响效果不使用FLASH
2014/04/23 HTML / CSS
德国受欢迎的旅游和休闲网站:lastminute.de
2019/09/23 全球购物
大学生标准推荐信范文
2013/11/25 职场文书
行政部主管岗位职责
2013/12/28 职场文书
地球一小时倡议书
2014/04/15 职场文书
医德医风演讲稿
2014/05/20 职场文书
技校毕业生自荐书
2014/05/23 职场文书
家庭困难证明
2014/10/12 职场文书
单位个人查摆问题及整改措施
2014/10/28 职场文书
2015年安全员工作总结范文
2015/04/22 职场文书
2016党员党课心得体会
2016/01/07 职场文书
《社戏》教学反思
2016/02/22 职场文书
Pytorch 如何实现常用正则化
2021/05/27 Python
python标准库ElementTree处理xml
2022/05/20 Python
基于Python编写一个监控CPU的应用系统
2022/06/25 Python