weiphp在线开发手册

在二次开发,会经常遇到各种各样的问题,这时就需要一些调试方法来定位问题。

在WeiPHP中有三种调试方法:开启调试模式、查看微信交互日志,使用微信公众平台提供的调试工具进行调试。下面对这三种方法进行详述。

一、开启调试模式

在PC端开发中,作为开发者一般建议是要把调试模式打开的。因为WeiPHP安装包默认是把此模式关闭,导致经常有开发者在官方QQ群里发一个报错的页面,但这个报错的页面只能告诉大家有错误,却没有提示具体是什么错误,发给别人看也没有什么意义,在这时只能先让开发者把调试模式打开,再看看调试打开时页面错的具体错误,这样才能对症下药。打开方法:

1、把根目录下的入口文件 index.php 打开,把 APP_DEBUG 常量设置为 true,效果如下图:


2、如果还需要显示程序运行的信息,可以在后台把trace打开就行


打开Trace后就可以看到这样的信息


点击右下角的图标后就可以看到具体的消息


二、查看微信交互日志

在开发微信功能时,有时会出现没有返回数据的时候,这时首先可以看看交互日志

为了防止文件可写权限等问题导致无法写日志的问题,微信的交互日志记录直接记录在数据库的weixin_log数据表里


一般交互日志记录两条数据,一条是微信的原始请求数据,一条是WeiPHP给微信响应的回复信息,data_post等于_replayData就表示是回复的记录
如下图的微信的原始请求数据,调试过程中发现能正常增加这条日志,说明微信已经正常把数据发送到WeiPHP里,至少微信与WeiPHP之间的通信是没有问题的了


接下来看看上面的请求有没有相应的的响应回复日志,如果有这条日志,还要看看日志里回复的内容是否与预期的内容一致。如果没有这条日志,说明程序在处理过程哪里不对导致中断了


至于程序中断的位置,开发者可以使用 addWeixinLog 这个公共函数在程序运行的过程中记录日志,一步一步进行记录日志进行跟踪,如HelloWorld插件可以加这样的调试



三、使用微信公众平台提供的调试工具进行调试

上面第二种方法如果还调试不出什么问题,这就需要使用微信提供的调试工具了。但因为微信调试工具需要一些参数还是需要从我们的日志表中获取,具体操作如下

1、进入调试工具页面


2、以消息接口调试为例,调试页面如下:


参数列表的数据来源说明:

URL: 从微信公众平台的开发模式页面里可以得到,如下图:



剩下的ToUserName、FromUserName、CreateTime、MsgId这几个参数可以从我们的日志随便找一条微信请求的数据进行复制
如下图的日志可知这几个值是
ToUserName:   gh_1529be6d4b33
FromUserName  oDQVqt54_P9Py5rApEVgmvMCD784
CreateTime         1395972290
MsgId                  5995655331872296963


而最后的Content 的值肯定是根据开发者自己的需求随意填写了

使用微信调试工具,可以直接看到WeiPHP返回的数据,特别是有错误,在日志里是看不到,但这里就可以直接看到了。

最后综上所述,上面的三种调试方式都是各有用途,开发者可以根据具体场景进行使用。开发过程中或者开发完,可以把日志表的数据全部清空,不影响功能的使用。

©2014 WeiPHP文档中心 weiphp.cn