微信服务号推送模板信息服务器验证

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2017/5/24
 * Time: 14:25
 */
define('APPID',        "wx8f457f0b39563526");
define('APPSECRET',    "bddbcd86ac2178dd0ce3ea0dfb74f43e");

class weixin_class
{
      public static $access_token = null;
      public static $appid = APPID;
      public static $appsecret = APPSECRET;
      //保证Access Token有效
      public static function valid()
      {
            $mem = new ICache();
            self::$access_token = $mem->get('access_token');
            if (empty(self::$access_token)){
                  $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".self::$appid."&secret=".self::$appsecret;
                  $res = self::getWxAccessToken($url);
                  self::$access_token = $res['access_token'];
                  $mem->set('access_token', self::$access_token,7000);
            }
      }
      /*
       * 将openid更新至数据库
       * param uid  int  用户id
       * param openid  string  微信授权码
      */
      public static function addOpenId($uid,$unionid){
            $obj = new IModel('user');
            $data = array('unionid'=>$unionid);
            $obj->setData($data);
            $where = "id =".$uid;
            $obj->update($where);
            return ;
      }

      // 获取access_token,调用微信接口
      public function getWxAccessToken($url){
            //初始化
            $ch = curl_init();
            //设置参数
            curl_setopt($ch,CURLOPT_URL,$url);
            curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
            //执行
            $res = curl_exec($ch);
            //关闭句柄
            curl_close($ch);
            //检查错误
            if(curl_errno($ch))
            {
                  echo 'Curl error:'.curl_error($ch);
            }

            $arr = json_decode($res,true);
            return $arr;
      }

      // 发送采集请求的方法
      public function http_curl($url,$type='get',$res='json',$data=''){
            //1.创建连接资源
            $ch = curl_init();
            //2.设置参数
            curl_setopt($ch,CURLOPT_URL,$url);
            curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
            //设置超时时间
            curl_setopt($ch,CURLOPT_TIMEOUT,10);
            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
            curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
            if($type=='post'){
                  curl_setopt($ch,CURLOPT_POST,1);
                  curl_setopt($ch,CURLOPT_POSTFIELDS,$data);
            }
            //3.采集
            $output = curl_exec($ch);
            //4.关闭
            curl_close($ch);
            if(curl_errno($ch)){
                  return curl_errno($ch);
            }
            return json_decode($output,true);

      }
      //1.param array  发送下单模板信息内容
      public static function sendOrderMsg($data=NULL)
      {
            //获取access_token
//            $access_token = $this->getWxAccessToken();
            $url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=".self::$access_token;
            $arr = array(
                "touser"=>"o5uhpw6MKWbZt_2lTYDK_Pxl22Aw",
                "template_id"=>"FkbIl7zt-xZblB41zgGM4dDUhuOKw_yz1oVIEwJY2fY",
                "url"=>"http://www.epeimall.com",
                "data"=>array(
                    'name'=>array(
                        'value'=>'小波波你好',
                        'color'=>'#173177'
                    ),
                    'date'=>array(
                        'value'=>date('Y-m-d H:i:s'),
                        'color'=>'#173177'
                    ),
                    'content'=>array(
                        'value'=>'欢迎下次再来关顾',
                        'color'=>'#173177'
                    )
                )
            );
            //数组->json
            $jsonData = json_encode($arr);
            //调用curl函数
            $res = self::http_curl($url,'post','json',$jsonData);
            var_dump($res);
      }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值