PHP微信公众号开发之基本配置

(提示:需要有服务器或云虚拟机)

 一开始不明白公众号不是可以这样管理吗?

              

那么为什么用开发平台进行公众号开发,官方文档是这样说的

为了识别用户,每个用户针对每个公众号会产生一个安全的OpenID,
如果需要在多公众号、移动应用之间做用户共通,则需前往微信开放平
台,将这些公众号和应用绑定到一个开放平台账号下,绑定后,一个用
户虽然对多个公众号和应用有多个不同的OpenID,但他对所有这些同
一开放平台账号下的公众号和应用,只有一个UnionID,可以在用户管
理-获取用户基本信息(UnionID机制)文档了解详情。

 下面开始基本配置吧

下面这些都要设置的

     

(以上信息建议复制一份到文本文档中)

 当然要上传相应文件到服务器上

扫描二维码关注公众号,回复: 1101525 查看本文章

代码如下:

  1 define("TOKEN", "hello");//令牌改成自己的
  2 
  3 $wechatObj = new wechatCallbackapiTest();
  4 
  5 $wechatObj->valid();
  6 
  7 
  8 
  9 class wechatCallbackapiTest
 10 
 11 {
 12 
 13 
 14     public function valid()
 15 
 16     {
 17 
 18         $echoStr = $_GET["echostr"];
 19 
 20 
 21 
 22         //valid signature , option
 23 
 24         if($this->checkSignature()){
 25 
 26             echo $echoStr;
 27 
 28             exit;
 29 
 30         }
 31 
 32     }
 33 
 34 
 35 
 36     public function responseMsg()
 37 
 38     {
 39 
 40         //get post data, May be due to the different environments
 41 
 42         $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
 43 
 44 
 45 
 46           //extract post data
 47 
 48         if (!empty($postStr)){
 49 
 50                 
 51 
 52                   $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
 53 
 54                 $fromUsername = $postObj->FromUserName;
 55 
 56                 $toUsername = $postObj->ToUserName;
 57 
 58                 $keyword = trim($postObj->Content);
 59 
 60                 $time = time();
 61 
 62                 $textTpl = "<xml>
 63 
 64                             <ToUserName><![CDATA[%s]]></ToUserName>
 65 
 66                             <FromUserName><![CDATA[%s]]></FromUserName>
 67 
 68                             <CreateTime>%s</CreateTime>
 69 
 70                             <MsgType><![CDATA[%s]]></MsgType>
 71 
 72                             <Content><![CDATA[%s]]></Content>
 73 
 74                             <FuncFlag>0</FuncFlag>
 75 
 76                             </xml>";             
 77 
 78                 if(!empty( $keyword ))
 79 
 80                 {
 81 
 82                       $msgType = "text";
 83 
 84                     $contentStr = "Welcome to wechat world!";
 85 
 86                     $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
 87 
 88                     echo $resultStr;
 89 
 90                 }else{
 91 
 92                     echo "Input something...";
 93 
 94                 }
 95 
 96 
 97 
 98         }else {
 99 
100             echo "";
101 
102             exit;
103 
104         }
105 
106     }
107 
108         
109 
110     private function checkSignature()
111 
112     {
113 
114         $signature = $_GET["signature"];
115 
116         $timestamp = $_GET["timestamp"];
117 
118         $nonce = $_GET["nonce"];    
119 
120                 
121 
122         $token = TOKEN;
123 
124         $tmpArr = array($token, $timestamp, $nonce);
125 
126         sort($tmpArr);
127 
128         $tmpStr = implode( $tmpArr );
129 
130         $tmpStr = sha1( $tmpStr );
131 
132         
133 
134         if( $tmpStr == $signature ){
135 
136             return true;
137 
138         }else{
139 
140             return false;
141 
142         }
143 
144     }
145 
146 }
View Code

配置成功后,按启用,基本配置就算完成了。

猜你喜欢

转载自www.cnblogs.com/iampengl/p/9107690.html