首頁 >後端開發 >php教程 >php版微信公眾平台開發之驗證步驟實例詳解(必讀)

php版微信公眾平台開發之驗證步驟實例詳解(必讀)

墨辰丷
墨辰丷原創
2018-06-01 10:20:161625瀏覽

這篇文章主要介紹了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 解析xml 的四種方法詳解

php array_multisort 將陣列進行排序詳解及實例

PHP中的密碼加密的解決方案總結

####################################################################################################### ##########

以上是php版微信公眾平台開發之驗證步驟實例詳解(必讀)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn