>  기사  >  백엔드 개발  >  php_php 기술로 WeChat 템플릿 메시지 전송을 구현하는 방법

php_php 기술로 WeChat 템플릿 메시지 전송을 구현하는 방법

WBOY
WBOY원래의
2016-05-16 20:21:431115검색

이 기사의 예에서는 PHP에서 WeChat 템플릿 메시지를 보내는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 내용은 다음과 같습니다.

이 방법은 thinkphp를 기반으로 구현되었습니다. 구체적인 OrderPush.class.php 파일은 다음과 같습니다.

코드 복사 코드는 다음과 같습니다.
네임스페이스 OrgWeixin;
/**
 * PhpStorm에서 제작했습니다.
 * 사용자: StandOpen
 * 일시 : 15-1-7
 *시간: 9시 41분
 */
클래스 OrderPush
{
    보호된 $appid;
    보호된 $secret;
    보호된 $accessToken;
    함수  __construct($appid, $secret)
    {
        $this->appid = $appid;
        $this->초 = $초;
        $this->accessToken = $this->getToken($appid, $secret);
    }
    /**
*게시물 요청 보내기
* @param 문자열 $url
* @param 문자열 $param
* @return bool|혼합
​​*/
    함수 request_post($url = '', $param = '')
    {
        if (비어 있음($url) || 비어 있음($param)) {
            false를 반환합니다.
        }
        $postUrl = $url;
        $curlPost = $param;
        $ch = 컬_초기화(); //初始화컬
        컬_setopt($ch, CURLOPT_URL, $postUrl); //抓取指定网页
        컬_setopt($ch, CURLOPT_HEADER, 0); //설명헤더
        컬_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //要求结果为字符串且输流到屏幕上
        컬_setopt($ch, CURLOPT_POST, 1); //post提交方式
        컬_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);
        $data = 컬_exec($ch); //运行컬
        컬_닫기($ch);
        $data 반환;
    }
    /**
*받기 요청 보내기
* @param 문자열 $url
* @return bool|혼합
​​*/
    함수 request_get($url = '')
    {
        if (비어 있음($url)) {
            false를 반환합니다.
        }
        $ch = 컬_init();
        컬_setopt($ch, CURLOPT_URL, $url);
        컬_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        $data = 컬_exec($ch);
        컬_닫기($ch);
        $data 반환;
    }
    /**
* @param $appid
* @param $appsecret
* @return 혼합
* 토큰 받기
​​*/
    보호된 함수 getToken($appid, $appsecret)
    {
        if (S($appid)) {
            $access_token = S($appid);
        } 그 밖의 {
            $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" . $appid . "&비밀=" . $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);
        }
        $access_token 반환;
    }
    /**
     * 发送사용자 정의 模板消息
* @param $touser
* @param $template_id
* @param $url
* @param $data
* @param 문자열 $topcolor
* @return 부울
*/
공개 함수 doSend($touser, $template_id, $url, $data, $topcolor = '#7B68EE')
{
         /*
* 데이터=>배열(
                'first'=>array('value'=>urlencode("안녕하세요, 성공적으로 구매하셨습니다"),'color'=>"#743A3A"),
               'name'=>array('value'=>urlencode("제품 정보: 마이크로타임스 영화 티켓"),'color'=>'#EEEEEE'),
                'remark'=>array('value'=>urlencode('영구적으로 유효합니다! 비밀번호는 1231313'),'color'=>'#FFFFFF'),
)
*/
          $template = 배열(
             'touser' => $touser,
              '템플릿_ID' => $템플릿_ID,
             'url' => $url,
             'topcolor' => $topcolor,
             '데이터' => $데이터
);
          $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) {
             true를 반환합니다.
         } else {
              false를 반환합니다.
}
}
}

이 기사가 모든 사람의 PHP 프로그래밍 설계에 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.