加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP技术开发微信公众平台

发布时间:2020-12-13 02:46:10 所属栏目:PHP教程 来源:网络整理
导读:《:PHP技术开发微信公众平台》要点: 本文介绍了:PHP技术开发微信公众平台,希望对您有用。如果有疑问,可以联系我们。 PHP教程 下面通过图文并茂的方式介绍微信公众平台开发过程,具体内容如下: PHP教程 微信公众平台有两种模式:编辑模式 和 开发模式. P

《:PHP技术开发微信公众平台》要点:
本文介绍了:PHP技术开发微信公众平台,希望对您有用。如果有疑问,可以联系我们。

PHP教程下面通过图文并茂的方式介绍微信公众平台开发过程,具体内容如下:

PHP教程微信公众平台有两种模式:编辑模式 和 开发模式.

PHP教程普通的功能可以通过编辑模式来搞定.开发模式具有更多的功能.让我们来使用开发模式开发helloword吧

PHP教程步骤如下:

PHP教程第一步:先注册一个公众号(https://mp.weixin.qq.com)

PHP教程第二步:注册sae(http://sae.sina.com.cn/),作为你的服务器.

PHP教程第三步:登录微信公众平台(https://mp.weixin.qq.com)查看开发文档并下载官方提供的demo.做适当修改.

PHP教程第四步:将代码压缩成zip格式,上传到sae平台.

PHP教程第五步:登录微信公众平台,进入开发者中心.开启“服务者配置”.

PHP教程第六步:成功了.

PHP教程开始吧:

PHP教程1.先注册一个公众号(https://mp.weixin.qq.com)

PHP教程2.注册sae(http://sae.sina.com.cn/)

PHP教程注册完以后要记得进行实名认证,不然绑定到公众平台的时候,会有永远的“无法获取token”的提示.(实名认证需要3个工作日才能成功)

PHP教程然后可以点击创建应用.创建后可以在下面看到.

PHP教程

PHP教程进入自己创建的应用.然后点击代码管理.

PHP教程

PHP教程

PHP教程3.登录微信公众平台(https://mp.weixin.qq.com)

PHP教程查看开发文档并下载官方提供的demo.

PHP教程

PHP教程

PHP教程

PHP教程打开后是如下的代码:

PHP教程
<?php
/**
 * wechat php test
 */
//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 (!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->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(!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;
 }
 }
}
?>

PHP教程我试过,如上代码,似乎无法执行到response那一块.所以做了更改

PHP教程
<?php
/**
 * wechat php test
 */
//define your token
define("TOKEN","weixin");
$wechatObj = new wechatCallbackapiTest();
//这里做了更改
if($_GET["echostr"]){
 $wechatObj->valid();
}else{
 $wechatObj->responseMsg();
}
class wechatCallbackapiTest
{
 public function valid()
 {
 $echoStr = $_GET["echostr"];
 //valid signature,SORT_STRING);
 $tmpStr = implode( $tmpArr );
 $tmpStr = sha1( $tmpStr );
 if( $tmpStr == $signature ){
  return true;
 }else{
  return false;
 }
 }
}
?>

PHP教程你可以将Welcome to wechat world!更改为Hello Word!

PHP教程4.将代码压缩成zip格式,上传到sae平台.

PHP教程

PHP教程点击“编辑代码”,可以看到你上传的php文件.然后右击,url查看.复制url(http://1.carlzhang.sinaapp.com/wx_carlzhang819.php).在这里要记住在此php文件中定义的token.此处为“weixin”,可以在如下图中看到.

PHP教程

PHP教程5.登录微信公众平台,进入开发者中心.开启“服务者配置”.url填写上一步复制的url(这里我删除了前面的1.因为我的sae默认第一版.你可以试试,删除1,若是url拜访,不报404,那就是没问题).token填写的是代码中的token(上面是“weixin”).

PHP教程

PHP教程

PHP教程如果启用成功,就可以关注你的微信平台,输入内容,看看提示是不是Welcome to wechat world!或者Hello Word!

PHP教程以上全部内容就是针对微信公众平台做的讲解,希望可以赞助到大家.

编程之家培训学院每天发布《:PHP技术开发微信公众平台》等实战技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培养人才。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读