php实现发送微信模板消息的方法

    本文实例讲述了php实现发送微信模板消息的方法。分享给大家供大家参考。具体如下:

    该方法基于thinkphp实现实现,具体OrderPush.class.php文件如下:


<?php  namespace OrgWeixin;  /**   * Created by PhpStorm.   * User: StandOpen   * Date: 15-1-7   * Time: 9:41   */  class OrderPush  {      protected $appid;      protected $secrect;      protected $accessToken;      function  __construct($appid, $secrect)      {          $this->appid = $appid;          $this->secrect = $secrect;          $this->accessToken = $this->getToken($appid, $secrect);      }      /**       * 发送post请求       * @param string $url       * @param string $param       * @return bool|mixed       */      function request_post($url = '', $param = '')      {          if (empty($url) || empty($param)) {              return false;          }          $postUrl = $url;          $curlPost = $param;          $ch = curl_init(); //初始化curl          curl_setopt($ch, CURLOPT_URL, $postUrl); //抓取指定网页          curl_setopt($ch, CURLOPT_HEADER, 0); //设置header          curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //要求结果为字符串且输出到屏幕上          curl_setopt($ch, CURLOPT_POST, 1); //post提交方式          curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);          $data = curl_exec($ch); //运行curl          curl_close($ch);          return $data;      }      /**       * 发送get请求       * @param string $url       * @return bool|mixed       */      function request_get($url = '')      {          if (empty($url)) {              return false;          }          $ch = curl_init();          curl_setopt($ch, CURLOPT_URL, $url);          curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);          $data = curl_exec($ch);          curl_close($ch);          return $data;      }      /**       * @param $appid       * @param $appsecret       * @return mixed       * 获取token       */      protected function getToken($appid, $appsecret)      {          if (S($appid)) {              $access_token = S($appid);          } else {              $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" . $appid . "&secret=" . $appsecret;              $token = $this->request_get($url);              $token = json_decode(stripslashes($token));              $arr = json_decode(json_encode($token), true);              $access_token = $arr['access_token'];              S($appid, $access_token, 720);          }          return $access_token;      }      /**       * 发送自定义的模板消息       * @param $touser       * @param $template_id       * @param $url       * @param $data       * @param string $topcolor       * @return bool       */      public function doSend($touser, $template_id, $url, $data, $topcolor = '#7B68EE')      {          /*           * data=>array(                  'first'=>array('value'=>urlencode("您好,您已购买成功"),'color'=>"#743A3A"),                  'name'=>array('value'=>urlencode("商品信息:微时代电影票"),'color'=>'#EEEEEE'),                  'remark'=>array('value'=>urlencode('永久有效!密码为:1231313'),'color'=>'#FFFFFF'),              )           */          $template = array(              'touser' => $touser,              'template_id' => $template_id,              'url' => $url,              'topcolor' => $topcolor,              'data' => $data          );          $json_template = json_encode($template);          $url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" . $this->accessToken;          $dataRes = $this->request_post($url, urldecode($json_template));          if ($dataRes['errcode'] == 0) {              return true;          } else {              return false;          }      }  }


    希望本文所述对大家的php程序设计有所帮助。

php实现发送微信模板消息的方法

郑重声明:本网站发布的内容(图片、视频和文字)以及用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注