PHP技术开发微信公众平台
下面通过图文并茂的方式介绍微信公众平台开发过程,具体内容如下:
微信公众平台有两种模式:编辑模式和开发模式。
普通的功能可以通过编辑模式来搞定。开发模式具有更多的功能。让我们来使用开发模式开发helloword吧
步骤如下:
第一步:先注册一个公众号(https://mp.weixin.qq.com)
第二步:注册sae(http://sae.sina.com.cn/),作为你的服务器。
第三步:登录微信公众平台(https://mp.weixin.qq.com)查看开发文档并下载官方提供的演示。做适当修改。
第四步:将代码压缩成活力格式,上传到邮资已付的回邮信封平台。
第五步:登录微信公众平台,进入开发者中心。开启"服务者配置"。
第六步:成功了。
开始吧:
1.先注册一个公众号(https://mp.weixin.qq.com)
2.注册sae(http://sae.sina.com.cn/)
注册完以后要记得进行实名认证,不然绑定到公众平台的时候,会有永远的"无法获取令牌"的提示。(实名认证需要3个工作日才能成功)
然后可以点击创建应用。创建后可以在下面看到。
进入自己创建的应用。然后点击代码管理。
3.登录微信公众平台(https://mp.weixin.qq.com)
查看开发文档并下载官方提供的演示。
打开后是如下的代码:
?php/** *微信PHP测试*///定义你的tokendefine('TOKEN ',' weixin ');$微信bj=新微信callbackapitet();$微信对象-有效();班级微信callbackapist { public function valid(){ $ echoStr=$ _ GET[' echoStr '];//有效签名,选项if($ this-CheckSignature()){ echo $ echoStr;退出;} }公共函数responseMsg(){//获取邮政数据,可能是由于环境不同$ PostStr=$ GLOBALS[' HTTP _ RAW _ POST _ DATA '];//提取帖子数据if(!空($ PostStr)){/* libxml _ disable _ Entity _ loader是为了防止xml外部实体注入,最好的方法是自己检查可扩展置标语言的有效性*/libxml _ disable _ Entity _ loader(true);$ PostObj=simple XML _ load _ string($ PostStr,' SimpleXMLElement ',LIBXML _ NocDATa);$ from username=$ PostObj-from username;$ touser name=$ PostObj-touser name;$关键字=trim($ PostObj-Content);$ time=time();$textTpl='xml ToUserName![CData[% s]]/从用户名使用用户名![CData[% s]]/来自用户名创建时间% s/创建时间MsgType![CDATA[%s]]/MsgType内容![CData[% s]]/Content func flag 0/func flag/XML ';if(!空($关键字)){ $ msgType=' text$contentStr='欢迎来到微信世界!$resultStr=sprintf($textTpl,$fromUsername,$toUsername,$time,$msgType,$ content str);回应$ resultStr }其他{回应'输入某物.} } else { echo退出;} }私有函数checkSignature() { //如果(!已定义(“TOKEN”){ 0引发新异常(' TOKEN未定义!');} $ signature=$ _ GET[' signature '];$时间戳=$_GET['时间戳'];$ nonce=$ _ GET[' nonce '];$ TOKEN=TOKEN $ TMParr=array($ TOKEN,$timestamp,$ nonce);//使用排序字符串规则sort($tmpArr,SORT _ STRING);$tmpStr=内爆($ TMParr);$ TMPstr=sha1($ TMPstr);if($ TMPstr==$ signature){ 0返回true}否则{返回false} }?我试过,如上代码,似乎无法执行到反应那一块。所以做了更改
?php/** *微信PHP测试*///定义你的tokendefine('TOKEN ',' weixin ');$微信bj=新微信callbackapitet();//这里做了更改if($ _ GET[' echostr ']){ $微信bj-valid();} else { $微信对象响应消息();}类微信callbackapist { public function valid(){ $ echoStr=$ _ GET[' echoStr '];//有效签名,选项if($ this-CheckSignature()){ echo $ echoStr;退出;} }公共函数responseMsg(){//获取邮政数据,可能是由于环境不同$ PostStr=$ GLOBALS[' HTTP _ RAW _ POST _ DATA '];//提取帖子数据if(!空($ PostStr)){/* libxml _ disable _ Entity _ loader是为了防止xml外部实体注入,最好的方法是自己检查可扩展置标语言的有效性*/libxml _ disable _ Entity _ loader(true);$ PostObj=simple XML _ load _ string($ PostStr,' SimpleXMLElement ',LIBXML _ NocDATa);$ from username=$ PostObj-from username;$ touser name=$ PostObj-touser name;$关键字=trim($ PostObj-Content);$ time=time();$textTpl='xml ToUserName![CData[% s]]/从用户名使用用户名![CData[% s]]/来自用户名创建时间% s/创建时间MsgType![CDATA[%s]]/MsgType内容![CData[% s]]/Content func flag 0/func flag/XML ';if(!空($关键字)){ $ msgType=' text$contentStr='欢迎来到微信世界!$resultStr=sprintf($textTpl,$fromUsername,$toUsername,$time,$msgType,$ content str);回应$ resultStr }其他{回应'输入某物.} } else { echo退出;} }私有函数checkSignature() { //如果(!已定义(“TOKEN”){ 0引发新异常(' TOKEN未定义!');} $ signature=$ _ GET[' signature '];$时间戳=$_GET['时间戳'];$ nonce=$ _ GET[' nonce '];$ TOKEN=TOKEN $ TMParr=array($ TOKEN,$timestamp,$ nonce);//使用排序字符串规则sort($tmpArr,SORT _ STRING);$tmpStr=内爆($ TMParr);$ TMPstr=sha1($ TMPstr);if($ TMPstr==$ signature){ 0返回true}否则{返回false} }?你可以将欢迎来到微信世界!更改为你好一言为定!
4.将代码压缩成活力格式,上传到邮资已付的回邮信封平台。
点击"编辑代码",可以看到你上传的服务器端编程语言(专业超文本预处理器的缩写)文件。然后右击,url查看。复制网址(http://1。卡尔章。新浪app。com/wx _ carlzhang 819。PHP)。在这里要记住在此服务器端编程语言(专业超文本预处理器的缩写)文件中定义的令牌。此处为"微信",可以在如下图中看到。
5.登录微信公众平台,进入开发者中心。开启"服务者配置"。全球资源定位器(统一资源定位符)填写上一步复制的url(这里我删除了前面的1.因为我的邮资已付的回邮信封默认第一版。你可以试试,删除1,若是全球资源定位器(统一资源定位符)访问,不报404,那就是没问题)。代币填写的是代码中的令牌(上面是"微信").
如果启用成功,就可以关注你的微信平台,输入内容,看看提示是不是欢迎来到微信世界!或者你好一言为定!
以上全部内容就是针对微信公众平台做的讲解,希望可以帮助到大家。
版权声明:PHP技术开发微信公众平台是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。