解析微信公眾平台開發之驗證步驟實例(PHP版)

怪我咯
發布: 2017-04-06 13:28:44
原創
1740 人瀏覽過

這篇文章主要介紹了php版微信公眾平台開發之驗證步驟,結合實例形式詳細分析了php微信公眾平台驗證的操作步驟與相關參數含義,需要的朋友可以參考下

本文範例講述了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, &#39;SimpleXMLElement&#39;, 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.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!