php公众号模板推送开发教程,微信公众号之模板推送

namespace app\api\controller;

class Wxpush

{

public function wxLogin()

{

$AppID = 'wxb722d21';

$redirect_uri = urlencode('https://t.fblfz.com/api/wxpush/getUserInfo');

//跳转微信回调到redirect_uri获取code

$url1 = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=$AppID&redirect_uri=$redirect_uri&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect";

return redirect($url1);//参数scop=snsapi_base只获取openid

}

public function getUserInfo()//静默授权

{

$code = $_GET["code"];

$AppID = 'wxb727716562d21';

$Appsecret = '522c94a5c2d';

$url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=$AppID&secret=$Appsecret&code=$code&grant_type=authorization_code";

$res = $this->sendRequest($url);

$access_token = $res["access_token"];

$openId = $res['openid'];

echo '联系管理员拿取Openid';

$stream = fopen("logs.txt", "a");fwrite($stream, "\n".$openId);

}

public function sendurl($url, $data) //菜单栏发送

{

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);

if (!empty($data)) {

curl_setopt($ch, CURLOPT_POST, TRUE);

curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

}

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$output = curl_exec($ch);

curl_close($ch);

return json_decode($output, true);

}

public function access($user,$formurls,$phone,$txt)

{

$access_token = $this->getacc();//拿取acc

$url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=".$access_token;

$data = array(

"touser" => 'oOEJw1TVSRarpvsFNPJh7ZvXDBz8', //openid

"template_id" => 'ac05DpJtls-kOopcm1sMberZRRWpSHn-F0jQAUgc_jY', //模板id

"url" => '用户点击信息跳转地址',

"data" => array(

'first' => array(

'value'=>'尊敬的客户,您的留言有了新的消息',

'color'=>'red'

),

'keyword1'=>array(

'value'=>'留言人:'.$user,

'color'=>''

),

'keyword2'=>array(

'value'=>'网址:'.$formurls,

'color'=>''

),

'keyword3'=>array(

'value'=>'留言手机号:'.$phone,

'color'=>''

),

'keyword4'=>array(

'value'=>'留言内容:'.$txt,

'color'=>''

),

'keyword5'=>array(

'value'=>'留言时间:'.date('Y-m-d H:i:s', time()),

'color'=>''

),

'remark' => array(

'value'=>'新用户留言!!!',

'color'=>''

),

), //模板数据

);

$this->sendurl($url,json_encode($data));//发送请求

}

public function getacc(){

$AppID = 'wxb7279f92d21';

$Appsecret = '54ce3686c44a5c2d';

$url="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$AppID."&secret=".$Appsecret;

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);

if (!empty($data)){

curl_setopt($ch, CURLOPT_POST, TRUE);

curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

}

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$output = curl_exec($ch);

curl_close($ch);

$access = json_decode($output,true);

return $access['access_token'];

}

public function sendRequest($url)//静默授权时使用

{

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$output = curl_exec($ch);

curl_close($ch);

return json_decode($output, true);

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值