365体育备用网址报道10.2.1微信小店SDK_365体育备用网址官网资讯

在正式讲解开拓内容之前,我们需要先将常用功能函数写入类中,以便在后面的章节中调用。以下是方倍工作室开拓的用于微信小店的SDK代码。

  1 <?PHP
  2 
  3 /*
  4     方倍工作室
  5     CopyRight 2014 All Rights Reserved
  6 */
  7 require_once('config.php');   //引用配置
  8 
  9 class class_weixin
 10 {
 11     var $appid = APPID;
 12     var $appsecret = APPSECRET;
 13 
 14     //构造函数,猎取Access Token
 15     public function __construct($appid = NULL, $appsecret = NULL)
 16     {
 17         if($appid && $appsecret){
 18             $this->appid = $appid;
 19             $this->appsecret = $appsecret;
 20         }
 21 
 22         $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$this->appid."&secret=".$this->appsecret;
 23         $res = $this->http_request($url);
 24         $result = json_decode($res, true);
 25         //save to Database or Memcache
 26         $this->access_token = $result["access_token"];
 27         $this->lasttime = time();
 28     }
 29 
 30     //创建菜单
 31     public function create_menu($data)
 32     {
 33         $url = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=".$this->access_token;
 34         $res = $this->http_request($url, $data);
 35         return json_decode($res, true);
 36     }
 37 
 38     //依据订单ID猎取订单详情
 39     public function get_detail_by_order_id($id)
 40     {
 41         $data = array('order_id' =>$id);
 42         $url = "https://api.weixin.qq.com/merchant/order/getbyid?access_token=".$this->access_token;
 43         $res = $this->http_request($url, json_encode($data));
 44         return json_decode($res, true);
 45     }
 46 
 47     //依据订单状态/创建时间猎取订单详情
 48     public function get_detail_by_filter($data = null)
 49     {
 50         $url = "https://api.weixin.qq.com/merchant/order/getbyfilter?access_token=".$this->access_token;
 51         $res = $this->http_request($url, $data);
 52         return json_decode($res, true);
 53     }
 54 
 55     //发送客服消息,已实现发送文本,其余类型可扩展
 56     public function send_custom_message($touser, $type, $data)
 57     {
 58         $msg = array('touser' =>$touser);
 59         $msg['msgtype'] = $type;
 60         switch($type)
 61         {
 62             case 'text':
 63                 $msg[$type]    = array('content'=>urlencode($data));
 64                 break;
 65             case 'news':
 66                 $msg[$type]    = array('articles'=>$data);
 67                 break;
 68             default:
 69                 $msg['text']   = array('content'=>urlencode("不撑腰的消息类型 ".$type));
 70                 break;
 71         }
 72         $url = "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=".$this->access_token;
 73         return $this->http_request($url, urldecode(json_encode($msg)));
 74     }
 75 
 76     //发送模版消息
 77     public function send_template_message($data)
 78     {
 79         $url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=".$this->access_token;
 80         $res = $this->http_request($url, $data);
 81         return json_decode($res, true);
 82     }
 83     
 84     //https要求(撑腰GET和POST)
 85     protected function http_request($url, $data = null)
 86     {
 87         $curl = curl_init();
 88         curl_setopt($curl, CURLOPT_URL, $url);
 89         curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
 90         curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
 91         if (!empty($data)){
 92             curl_setopt($curl, CURLOPT_POST, 1);
 93             curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
 94         }
 95         curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
 96         $output = curl_exec($curl);
 97         curl_close($curl);
 98         return $output;
 99     }
100 }

上述代码定义了微信小店的类,在类中定义了本章开拓实现需要用到的方法,这包括前面章节提到的创建自定义菜单、客服消息及模版消息等功能,以及需要用到的依据订单ID猎取订单详情和依据订单状态/创建时间猎取订单详情两个方法,这两个方法的使用方法在后面的章节有详细介绍。

------分隔线----------------------------

公布评论 (74人察看0条评论)
请自觉遵守互联网相关的政策法规,严禁公布色情、暴力、反动的言论。
用户名: 验证码: 点击我更换财富娱乐平台
最新评论