记录一下DEMO

<?php

function getAccessToken ($appid, $appsecret) {
$url='https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='.$appid.'&secret='.$appsecret;
$html = file_get_contents($url);
$output = json_decode($html, true);
$access_token = $output['access_token']; return $access_token;
} // 根据你的模板对应的关键字建立数组
// color 属性是可选项目,用来改变对应字段的颜色
$value = '为什么会这样测试';
$color = '#FF0000';
$data_arr = array(
'keyword1' => array( "value" => $value, "color" => $color ),
'keyword2' => array( "value" => $value, "color" => $color ),
'keyword3' => array( "value" => $value, "color" => $color ),
'keyword4' => array( "value" => $value, "color" => $color )
); $openid = 'onRuB4nGLMDTXUV-mxhlYOgV0nuY';
$templateid = 'UHttQpo6ZTkRgP93JWHmG7ChUm2aL9BCU5vzplCEtd0';
$formid = '339f1696b1544e87b3811433179f7910';
$post_data = array (
// 用户的 openID,可用过 wx.getUserInfo 获取
"touser" => $openid,
// 小程序后台申请到的模板编号
"template_id" => $templateid,
// 点击模板消息后跳转到的页面,可以传递参数
"page" => "/pages/app/init/main",
// 第一步里获取到的 formID
"form_id" => $formid,
// "prepay_id" => $formid,
// 数据
"data" => $data_arr,
// 需要强调的关键字,会加大居中显示
"emphasis_keyword" => "keyword2.DATA" ); // 发送 POST 请求的函数
// 你也可以用 cUrl 或者其他网络库,简单的请求这个函数就够用了
function send_post( $url, $post_data ) {
$options = array(
'http' => array(
'method' => 'POST',
// header 需要设置为 JSON
'header' => 'Content-type:application/json',
'content' => $post_data,
// 超时时间
'timeout' =>
)
); $context = stream_context_create( $options );
$result = file_get_contents( $url, false, $context ); return $result;
} // 这里替换为你的 appID 和 appSecret
$appid = 'xxxx';
$appsecret = 'xxx';
$url = "https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token=".getAccessToken ($appid, $appsecret);
// 将数组编码为 JSON
$data = json_encode($post_data, true); // 这里的返回值是一个 JSON,可通过 json_decode() 解码成数组
$return = send_post( $url, $data);
var_dump($return);

成功返回:

string(27) "{"errcode":0,"errmsg":"ok"}"

同时微信上也会收到模板消息

PHP 小程序发模板消息的更多相关文章

  1. 微信小程序开发模板消息的时候 出现 errcode: 41028, errmsg: "invalid form id hint:

    小程序开发模板消息的时候  出现 errcode: 41028, errmsg: "invalid form id hint: 我是使用的微信支付发送模板消息,提示的formid无效的 大家 ...

  2. 微信小程序发送模板消息

    微信小程序发送模板消息 标签(空格分隔): php 看小程序文档 [模板消息文档总览]:https://developers.weixin.qq.com/miniprogram/dev/framewo ...

  3. 微信小程序 发送模板消息的功能实现

    背景 - 小程序开发的过程中,绝大多数会满足微信支付 - 那么,作为友好交互的体现,自然就会考虑到支付后的消息通知咯 - 所以,我的小程序项目也要求完成这个效果,so.分享一下自己的实现步骤,以方便道 ...

  4. 微信小程序-发送模板消息(C#)

    步骤一:获取模板ID 有两个方法可以获取模版ID 通过模版消息管理接口获取模版ID 在微信公众平台手动配置获取模版ID 步骤二:页面的 <form/> 组件,属性report-submit ...

  5. 微信小程序:模板消息推送提示{“errcode”:41030,”errmsg”:”invalid page hint: [gP1eXXXXXX]”}

    在开发小程序 模板消息定时推送功能时,在开发版测试程序功能运行正常,但提交到线上后提示报错{“errcode”:41030,”errmsg”:”invalid page hint: [gP1eXXXX ...

  6. 微信小程序的模板消息与小程序订阅消息

    小程序订阅消息 功能介绍 消息能力是小程序能力中的重要组成,我们为开发者提供了订阅消息能力,以便实现服务的闭环和更优的体验. 订阅消息推送位置:服务通知 订阅消息下发条件:用户自主订阅 订阅消息卡片跳 ...

  7. Python 发送微信小程序的模板消息

    在小程序的开发过程中,会存在模板消息的发送,具体文档见 这里,模板消息的发送是和语言无关的,这里将简要写一下怎么用 Python 给用户发送模板消息.     通过文档可以知道,发送的时候,需要使用小 ...

  8. 微信小程序之模板消息推送

    最近在用sanic框架写微信小程序,其中写了一个微信消息推送,还挺有意思的,写了个小demo 具体见官方文档:https://developers.weixin.qq.com/miniprogram/ ...

  9. 订阅消息---由于微信小程序取消模板消息,限只能开发订阅消息

    订阅消息开发步骤: 1.小程序管理后台添加订阅消息的模板 2.小程序前端编写调用(拉起)订阅授权 wx.requestSubscribeMessage({ tmplIds: ['34fwe1211xx ...

随机推荐

  1. 转 C#关于DateTime得到的当前时间的格式和用法

    DateTime.Now.ToShortTimeString() DateTime dt = DateTime.Now; dt.ToString();//2005-11-5 13:21:25 dt.T ...

  2. memcached的缺点

    上篇博客说了为什么引入memcached,主要讲述了memcached的优点,接下来就是我们在使用中必须要注意的内容,memcached的缺点,只有正确认识它,才能运用自如,接下来先看一下memcac ...

  3. mysql 截取字符串 函数

    文章摘取自http://www.cnblogs.com/zdz8207/p/3765073.html 练习截取字符串函数(五个) mysql索引从1开始 一.mysql截取字符串函数 1.left(s ...

  4. 题解 UVa10943

    题目大意 多组数据,每组数据给定两个整数 \(n,k\),求出用 \(k\) 个不超过 \(n\) 的数相加得到 \(n\) 的方案数(不同顺序不算同种). 分析 计数水题.令 \(f_{i,j}\) ...

  5. 使用笔记:TF辅助工具--tensorflow slim(TF-Slim)

    如果抛开Keras,TensorLayer,tfLearn,tensroflow 能否写出简介的代码? 可以!slim这个模块是在16年新推出的,其主要目的是来做所谓的“代码瘦身” 一.简介 slim ...

  6. LightOJ - 1095 - Arrange the Numbers(错排)

    链接: https://vjudge.net/problem/LightOJ-1095 题意: Consider this sequence {1, 2, 3 ... N}, as an initia ...

  7. Python 的内置字符串方法(收藏专用)

    Python 的内置字符串方法(收藏专用) method 字符串 string python3.x  python 4.7k 次阅读  ·  读完需要 44 分钟 5 字符串处理是非常常用的技能,但 ...

  8. php函数基本语法之自定义函数

    PHP提供了功能强大的函数,但这远远满足不了需要,程序员可以根据需要自己创建函数.本节就开始学习创建函数的方法.大理石平台价格表 我们在实际开发过程当中需要有很多功能都需要反复使用到,而这些反复需要使 ...

  9. SaltStack 在 Windows 上的操作基础

    SaltStack 在 windows上的操作基础 1.删除文件: salt '172.16.3.11' file.remove 'D:\downup\111.msu' 2.删除文件夹 salt '1 ...

  10. RookeyFrame 通用页面 加载数据 原理

    说明: 我是一步一步跳转进去的哈 测试的功能:通用列表页面的普通查询 点一下查询按钮,就能看到请求的地址:/DataAsync/LoadGridData.html 1.DataController - ...