valid(); wechatCallbackapiTest { {代码...} } ?>" /> valid(); wechatCallbackapiTest { {代码...} } ?>">
Jadual Kandungan
回复内容:
Rumah pembangunan bahagian belakang tutorial php 微信开发模式 - 微信接入验证代码中,<?php?>是什么意思?

微信开发模式 - 微信接入验证代码中,<?php?>是什么意思?

Jun 06, 2016 pm 08:08 PM
php

代码如下:

<code><?php /**</code></code>
Salin selepas log masuk
Salin selepas log masuk
    • wechat php test
      */

    //define your token
    define("TOKEN", "weixin");
    $wechatObj = new wechatCallbackapiTest();
    $wechatObj->valid();

    1. wechatCallbackapiTest
      {

      <code>   public function valid()
         {
             $echoStr = $_GET["echostr"];
      
             //valid signature , option
             if($this-&gt;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 (!empty($postStr)){
                     /* libxml_disable_entity_loader is to prevent XML eXternal Entity Injection,
                        the best way is to check the validity of xml by yourself */
                     libxml_disable_entity_loader(true);
                       $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
                     $fromUsername = $postObj-&gt;FromUserName;
                     $toUsername = $postObj-&gt;ToUserName;
                     $keyword = trim($postObj-&gt;Content);
                     $time = time();
                     $textTpl = "<xml>
                                 <tousername></tousername>
                                 <fromusername></fromusername>
                                 <createtime>%s</createtime>
                                 <msgtype></msgtype>
                                 <content></content>
                                 <funcflag>0</funcflag>
                                 </xml>";             
                     if(!empty( $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()
         {
             // you must define TOKEN by yourself
             if (!defined("TOKEN")) {
                 throw new Exception('TOKEN is not defined!');
             }
             
             $signature = $_GET["signature"];
             $timestamp = $_GET["timestamp"];
             $nonce = $_GET["nonce"];
                     
             $token = TOKEN;
             $tmpArr = array($token, $timestamp, $nonce);
             // use SORT_STRING rule
             sort($tmpArr, SORT_STRING);
             $tmpStr = implode( $tmpArr );
             $tmpStr = sha1( $tmpStr );
             
             if( $tmpStr == $signature ){
                 return true;
             }else{
                 return false;
             }
         }</code>
      Salin selepas log masuk
      Salin selepas log masuk

      }

      ?>

    回复内容:

    代码如下:

    <code><?php /**</code></code>
    Salin selepas log masuk
    Salin selepas log masuk
    • wechat php test
      */

    //define your token
    define("TOKEN", "weixin");
    $wechatObj = new wechatCallbackapiTest();
    $wechatObj->valid();

    1. wechatCallbackapiTest
      {

      <code>   public function valid()
         {
             $echoStr = $_GET["echostr"];
      
             //valid signature , option
             if($this-&gt;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 (!empty($postStr)){
                     /* libxml_disable_entity_loader is to prevent XML eXternal Entity Injection,
                        the best way is to check the validity of xml by yourself */
                     libxml_disable_entity_loader(true);
                       $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
                     $fromUsername = $postObj-&gt;FromUserName;
                     $toUsername = $postObj-&gt;ToUserName;
                     $keyword = trim($postObj-&gt;Content);
                     $time = time();
                     $textTpl = "<xml>
                                 <tousername></tousername>
                                 <fromusername></fromusername>
                                 <createtime>%s</createtime>
                                 <msgtype></msgtype>
                                 <content></content>
                                 <funcflag>0</funcflag>
                                 </xml>";             
                     if(!empty( $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()
         {
             // you must define TOKEN by yourself
             if (!defined("TOKEN")) {
                 throw new Exception('TOKEN is not defined!');
             }
             
             $signature = $_GET["signature"];
             $timestamp = $_GET["timestamp"];
             $nonce = $_GET["nonce"];
                     
             $token = TOKEN;
             $tmpArr = array($token, $timestamp, $nonce);
             // use SORT_STRING rule
             sort($tmpArr, SORT_STRING);
             $tmpStr = implode( $tmpArr );
             $tmpStr = sha1( $tmpStr );
             
             if( $tmpStr == $signature ){
                 return true;
             }else{
                 return false;
             }
         }</code>
      Salin selepas log masuk
      Salin selepas log masuk

      }

      ?>

    帅哥||美女

    看到你的疑惑,我也感觉很困惑,我有一个不成熟的小建议...在了解并且准备使用一门语言之前,大致浏览下它的官方手册。

    点击此处查看手册链接

    多看看手册,对使用PHP处理事务很有帮助的,个人认为,使用任何语言的时候都要先看一遍官方手册才行啊。

    不知道是不是我对你的问题理解有问题,但从你问题和代码来看,这是代表这是PHP脚本

    ?>

    Kenyataan Laman Web ini
    Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

    Tag artikel panas

    Notepad++7.3.1

    Notepad++7.3.1

    Editor kod yang mudah digunakan dan percuma

    SublimeText3 versi Cina

    SublimeText3 versi Cina

    Versi Cina, sangat mudah digunakan

    Hantar Studio 13.0.1

    Hantar Studio 13.0.1

    Persekitaran pembangunan bersepadu PHP yang berkuasa

    Dreamweaver CS6

    Dreamweaver CS6

    Alat pembangunan web visual

    SublimeText3 versi Mac

    SublimeText3 versi Mac

    Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

    Tarikh dan Masa CakePHP Tarikh dan Masa CakePHP Sep 10, 2024 pm 05:27 PM

    Tarikh dan Masa CakePHP

    Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Dec 24, 2024 pm 04:42 PM

    Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian

    Muat naik Fail CakePHP Muat naik Fail CakePHP Sep 10, 2024 pm 05:27 PM

    Muat naik Fail CakePHP

    Penghalaan CakePHP Penghalaan CakePHP Sep 10, 2024 pm 05:25 PM

    Penghalaan CakePHP

    Bincangkan CakePHP Bincangkan CakePHP Sep 10, 2024 pm 05:28 PM

    Bincangkan CakePHP

    Panduan Ringkas CakePHP Panduan Ringkas CakePHP Sep 10, 2024 pm 05:27 PM

    Panduan Ringkas CakePHP

    Konfigurasi Projek CakePHP Konfigurasi Projek CakePHP Sep 10, 2024 pm 05:25 PM

    Konfigurasi Projek CakePHP

    Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Dec 20, 2024 am 11:31 AM

    Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP

    See all articles