zoukankan      html  css  js  c++  java
  • 微信公众平台PHP示例一

    <?php
    /**
     * Created by PhpStorm.
     * User: Administrator
     * Date: 2015-12-18
     * Time: 21:51
     */
    define("TOKEN","weixin");
    $wechatobj = new wechatCallbackapiTest();
    if(isset($_GET['echostr'])){
        $wechatobj->valid();
    }
    else
    {
        $wechatobj->responseMsg();
    }
    
    class wechatCallbackapiTest
    {
    
        public function valid()
        {
            $echoStr=$_GET["echostr"];
            if($this->checkSignature()){
                header('content-type:text');
                echo $echoStr;
                exit;
            }
    
        }
        private function checkSignature()
        {
    $signature=$_GET["signature"];
            $timestamp=$_GET["timestamp"];
            $nonce=$_GET["nonce"];
    
            $token=TOKEN;
            $tmpArr=array($token,$timestamp,$nonce);
            sort($tmpArr,sort_strin);
    
            $tmpStr=implode($tmpArr);
            $tmpStr=sha1($tmpStr);
    
            if($tmpStr==$signature)
            {
                return true;
            }
            else
            {
                return false;
            }
    
        }
        public function responseMsg()
        {
    $postStr=$GLOBALS["http_raw_post_data"];
            if(!empty($postStr))
            {
                $postObj=simplexml_load_string($postStr,'Simp',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($keyword=="?" || $keyword=="?")
                {
                    $msgType="text";
                    $contentStr=date("y-m-d h:i:s",time());
    
                    $resultStr=sprintf($textTpl,$fromUsername,$toUsername);
                    echo $resultStr;
                }
            }
            else
            {
                echo "";
                exit;
            }
    
    
        }
    }
  • 相关阅读:
    ASP.NET程序中常用的三十三种代码【转】
    BTree,BTree,B+Tree,B*Tree都是什么
    调用Google地图
    JS特效总结
    2005 加入博客园
    .net Windows服务程序安装与安装程序的制作
    七夕,爱似流年
    JS+CSS仿魔兽游戏进入进度条特效
    常用正则表达式
    Google翻译网站添加Google翻译,让老外也看的懂你的网站
  • 原文地址:https://www.cnblogs.com/cb168/p/5058651.html
Copyright © 2011-2022 走看看