php专区

 首页 > php专区 > PHP应用 > 常用功能 > php 微信公众平台开发之验证步骤

php 微信公众平台开发之验证步骤

分享到:
【字体:
导读:
          微信公众平台开发我们现在做得比较多了,下面给各位介绍的是一个入门级别的微信公众平台验证基础知识了,有兴趣的和小编来看看。 开发微信的时候 需要验证一下,在官方开发者中心...

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

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

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

下载好后代码如下:

  1. /** 
  2.   * wechat php test 
  3.   * update time: 20141008 
  4.   */ 
  5. //define your token 
  6. define("TOKEN""weixin"); 
  7. $wechatObj = new wechatCallbackapiTest(); 
  8. $wechatObj->valid(); 
  9. class wechatCallbackapiTest 
  10. public function valid() 
  11.     { 
  12.         $echoStr = $_GET["echostr"]; 
  13.         //valid signature , option 
  14.         if($this->checkSignature()){ 
  15.         echo $echoStr
  16.         exit
  17.         } 
  18.     } 
  19.     public function responseMsg() 
  20.     { 
  21. //get post data, May be due to the different environments 
  22. $postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; 
  23.       //extract post data 
  24. if (!emptyempty($postStr)){ 
  25.                  
  26.               $postObj = simplexml_load_string($postStr'SimpleXMLElement', LIBXML_NOCDATA); 
  27.                 $fromUsername = $postObj->FromUserName; 
  28.                 $toUsername = $postObj->ToUserName; 
  29.                 $keyword = trim($postObj->Content); 
  30.                 $time = time(); 
  31.                 $textTpl = " 
  32.  
  33.  
  34. %s 
  35.  
  36.  
  37. 0 
  38. ";              
  39. if(!emptyempty$keyword )) 
  40.                 { 
  41.               $msgType = "text"
  42.                 $contentStr = "Welcome to wechat world!"
  43.                 $resultStr = sprintf($textTpl$fromUsername$toUsername$time$msgType$contentStr); 
  44.                 echo $resultStr
  45.                 }else
  46.                 echo "Input something..."
  47.                 } 
  48.         }else { 
  49.         echo ""
  50.         exit
  51.         } 
  52.     } 
  53. private function checkSignature() 
  54.         $signature = $_GET["signature"]; 
  55.         $timestamp = $_GET["timestamp"]; 
  56.         $nonce = $_GET["nonce"]; 
  57. $token = TOKEN; 
  58. $tmpArr = array($token$timestamp$nonce); 
  59.         sort($tmpArr, SORT_STRING); 
  60. $tmpStr = implode( $tmpArr ); 
  61. $tmpStr = sha1( $tmpStr ); 
  62. if$tmpStr == $signature ){ 
  63. return true;  //phpfensi.com 
  64. }else
  65. return false; 
  66. ?> 

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

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

 
 

 


分享到:
PHP自动批量生成会员卡号程序 - php高级...
PHP自动批量生成会员卡号程序 当我们要将一个庞大的数据进行编号时,而编号有位数限制,比如5位的车牌号、10位的某证件号码、订单流水号、短网址等等,我们可以使用36进制计算出符合位数的不重复的编号. 我们将0-Z(0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ)分别代表数值0-35,如字母Z代表35,这样...
phpexcel读取excel表格时间的例子
phpexcel是php中专业来操作excel表格的一个php插件了,下文我们就来看看phpexcel读取excel表格时间的例子,希望下文能够帮助到各位. 编辑通过excel表格修改了大批的产品价格和促销时间,让我们技术批量导入到线上数据库,这样对于我们来说是一件在简单不过的事情了,保护phpexcel导表利器,瞬间解决问题. 可是,进入数据库...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……