Thinkphp框架----微信公众测试号开发

  最开始的一个步骤。注册一个微信公众测试号。URL:https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login;

 接口配置的信息,对新手来说最难的就是找错,一句配置失败,然后什么信息都没有,其实,是有的,

    当输入的URL 一直配置失败的时候,可以复制当前的URL,再到网页访问一下,就可以发现是哪里报错了。

  

  

  处理这一步的话:

      1。需要一个云服务器,推荐阿里云。一个我是华南的,一个月61.还可以。百度云服务器没用过,新浪云不要和云空间弄混了,云空间不可以用数据库,到后面有些麻烦,阿里云简单也稳定,项目和平时实验都可以。

        1)百度阿里云,找到云服务器ECS,

        

        2)买买买的就不用我说了

        3)URL放的就是你微信的控制器的那个方法 比如 :http://165.265.32.02/index.php/App/Wechat/index 

           解析:165.265.32.02 服务器的公网ID,一般用服务器就不用域名也可以

              index.php/App/控制器/方法     THINKPHP的基本

        4)现在点提交的话肯定也是配置失败,先提交下面的代码,再回来确定提交。

      2。上传文件到服务器。我用的是FZ。感觉还是挺好用的,网页管理后台用WDCP。(不知道直接百度就行,再不知道欢迎麻烦我。)把整个文件Thinkphp框架 上传到服务器 一般默认是在/www/web/default/下。也可以自己更改 

      3.因为我是用Gaoming13的SDK微信接口,url:https://github.com/gaoming13/wechat-php-sdk 

        1) 将wechat-php-sdk下载,然后将SDK内 src 文件夹重命名为 Gaoming13, 拷贝至 ThinkPHP/Library/ 下即可使用 Wechat 和 Api 类库。

        2)在THINKPHP 控制器里use 这个文件 

        3)可以先做一个简单的关键字回复

        上代码

 1  public function index()
 2     {
 3 
 4         $wechat = new Wechat(array( 
 5             // 开发者中心-配置项-AppID(应用ID)        
 6             'appId'         =>  '你的appid',
 7             // 开发者中心-配置项-服务器配置-Token(令牌)
 8             'token'         =>  '你的token'
 9             // 开发者中心-配置项-服务器配置-EncodingAESKey(消息加解密密钥)
10             // 可选: 消息加解密方式勾选 兼容模式 或 安全模式 需填写
11             
12         ));
13 
14 
15         
16 
17         // 获取微信消息
18         $msgObj = $wechat->serve();
19 
20 
21         $data = json_encode($msgObj);
22 
23         $map['xml'] = $data;
24         M('tmp')->add($map);
25         // var_dump($msgObj);
26 
27         //判断用户是否进行一个关注
28         if( $msgObj->MsgType == 'event' && $msgObj->Event == 'subscribe' ){
29 
30             $wechat->reply('欢迎光临234');
31 
32         }
33 
34         //判断用户发送过来的是不是?
35         if( $msgObj->Content == '?' ){
36             //回复一个文本消息,文本消息的内容是"你好"
37             $wechat->reply("你好");
38         }
39 
40 
41         //图文,回复图文消息
42         if( $msgObj->Content == '图文' ){
43              
44             $data = M('newss')->select();//需要在服务器里面有个数据库
45             $reply['type'] = 'news';
46             $reply['articles'] = M('new')->field('title,descp as description,url,picurl')->select();
47 
48             $wechat->reply($reply);
49         }
50 
51 
52     }

    总结。代码是死的,思维是活,期间会遇见很多问题,比如我调用Gaoming13的SDK的时候版本不对,数组不能用 [] 表示,找了一晚才找到这个问题.不要气馁,今晚先讲到这里,有问题留言给我。

              

原文地址:https://www.cnblogs.com/chenrunxuan/p/6132515.html