PHP实现创建微信自定义菜单的方法示例


Posted in PHP onJuly 14, 2017

本文实例讲述了PHP实现创建微信自定义菜单的方法。分享给大家供大家参考,具体如下:

在使用通用接口前,你需要做以下两步工作:

1.拥有一个微信公众账号,并获取到appidappsecret(在公众平台申请内测资格,审核通过后可获得)

2.通过获取凭证接口获取到access_token

注意:

access_token是第三方访问api资源的票据;

access_token对应于公众号是全局唯一的票据,重复获取将导致上次获取的access_token失效。

访问下面这个地址(注意替换你的appid和secret):

https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

然后在浏览器能看到一下返回信息:

{"access_token":"这里就是你的access_token","expires_in":7200}

创建自定义菜单:

<?php
header("Content-type: text/html; charset=utf-8");
define("ACCESS_TOKEN", "这里填入你上面获取到的access_token");
//创建菜单
function createMenu($data){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=".ACCESS_TOKEN);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$tmpInfo = curl_exec($ch);
if (curl_errno($ch)) {
 return curl_error($ch);
}
curl_close($ch);
return $tmpInfo;
}
//获取菜单
function getMenu(){
return file_get_contents("https://api.weixin.qq.com/cgi-bin/menu/get?access_token=".ACCESS_TOKEN);
}
//删除菜单
function deleteMenu(){
return file_get_contents("https://api.weixin.qq.com/cgi-bin/menu/delete?access_token=".ACCESS_TOKEN);
}
$data = '{
   "button":[
   {
     "type":"click",
     "name":"首页",
     "key":"home"
   },
   {
      "type":"click",
      "name":"简介",
      "key":"introduct"
   },
   {
      "name":"菜单",
      "sub_button":[
      {
        "type":"click",
        "name":"hello word",
        "key":"V1001_HELLO_WORLD"
      },
      {
        "type":"click",
        "name":"赞一下我们",
        "key":"V1001_GOOD"
      }]
    }]
}';
echo createMenu($data);
//echo getMenu();
//echo deleteMenu();

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

PHP 相关文章推荐
PHP仿盗链代码
Jun 03 PHP
PHP超级全局变量数组小结
Oct 04 PHP
将博客园(cnblogs.com)数据导入到wordpress的代码
Jan 06 PHP
解析Linux下Varnish缓存的配置优化
Jun 20 PHP
php解决抢购秒杀抽奖等大流量并发入库导致的库存负数的问题
Jun 19 PHP
ThinkPHP结合ajax、Mysql实现的客户端通信功能代码示例
Jun 23 PHP
ThinkPHP中的三大自动简介
Aug 22 PHP
PHP实现自动识别Restful API的返回内容类型
Feb 07 PHP
8个PHP数组面试题
Jun 23 PHP
简单介绍PHP的责任链编程模式
Aug 11 PHP
thinkPHP实现递归循环栏目并按照树形结构无限极输出的方法
May 19 PHP
Laravel下生成验证码的类
Nov 15 PHP
PHP微信公众号开发之微信红包实现方法分析
Jul 14 #PHP
PHP机器学习库php-ml的简单测试和使用方法
Jul 14 #PHP
thinkphp3.2嵌入百度编辑器ueditor的实例代码
Jul 13 #PHP
PHP微信PC二维码登陆的实现思路
Jul 13 #PHP
PHP基于socket实现客户端和服务端通讯功能
Jul 13 #PHP
php中请求url的五种方法总结
Jul 13 #PHP
Laravel 5.4重新登录实现跳转到登录前页面的原理和方法
Jul 13 #PHP
You might like
PHP Pear 安装及使用
2009/03/19 PHP
shopex中集成的站长统计功能的代码简单分析
2011/08/11 PHP
php顺序查找和二分查找示例
2014/03/27 PHP
Codeigniter生成Excel文档的简单方法
2014/06/12 PHP
thinkPHP3.2简单实现文件上传的方法
2016/05/16 PHP
IE7中javascript操作CheckBox的checked=true不打勾的解决方法
2009/12/07 Javascript
Extjs显示从数据库取出时间转换JSON后的出现问题
2012/11/20 Javascript
jquery的map与get方法详解
2013/11/04 Javascript
基于JQuery实现的Select级联
2014/01/27 Javascript
JavaScript获得url所有参数键值表的方法
2015/03/21 Javascript
JS模拟Dialog弹出浮动框效果代码
2015/10/16 Javascript
JavaScript实现三级联动效果
2017/07/15 Javascript
React Native中NavigatorIOS组件的简单使用详解
2018/01/27 Javascript
vue里面使用mui的弹出日期选择插件实例
2018/09/16 Javascript
在vue中解决提示警告 for循环报错的方法
2018/09/28 Javascript
JS/HTML5游戏常用算法之路径搜索算法 A*寻路算法完整实例
2018/12/14 Javascript
js嵌套的数组扁平化:将多维数组变成一维数组以及push()与concat()区别的讲解
2019/01/19 Javascript
[01:24]2014DOTA2 TI第二日 YYF表示这届谁赢都有可能
2014/07/11 DOTA
Python函数嵌套实例
2014/09/23 Python
使用python实现生成用户信息
2017/03/20 Python
python3.4下django集成使用xadmin后台的方法
2017/08/15 Python
Python抓取聚划算商品分析页面获取商品信息并以XML格式保存到本地
2018/02/23 Python
python实现指定字符串补全空格、前面填充0的方法
2018/11/16 Python
python爬虫URL重试机制的实现方法(python2.7以及python3.5)
2018/12/18 Python
Python图像滤波处理操作示例【基于ImageFilter类】
2019/01/03 Python
浅谈PySpark SQL 相关知识介绍
2019/06/14 Python
教你如何用python操作摄像头以及对视频流的处理
2020/10/12 Python
英国最专业的健身器材供应商之一:Best Gym Equipment
2017/12/22 全球购物
安全检查验收制度
2014/01/12 职场文书
优秀辅导员事迹材料
2014/02/16 职场文书
四年大学自我鉴定
2014/02/17 职场文书
电子商务专业学生职业生涯规划
2014/03/07 职场文书
2014年幼儿园班级工作总结
2014/12/17 职场文书
趣味运动会标语口号
2015/12/26 职场文书
2019毕业论文致谢词
2019/06/24 职场文书
jackson json序列化实现首字母大写,第二个字母需小写
2021/06/29 Java/Android