微信自定义菜单的处理开发示例


Posted in PHP onApril 16, 2015

自定义菜单的创建

<?php

define("APPID", "您的appid");
define("APPSECRET", "您的appsecret ");

$token_access_url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" . APPID . "&secret=" . APPSECRET;
$res = file_get_contents($token_access_url);  //获取文件内容或获取网络请求的内容
//echo $res;
$result = json_decode($res, true);  //接受一个 JSON 格式的字符串并且把它转换为 PHP 变量
$access_token = $result['access_token'];

define("ACCESS_TOKEN", $access_token);  //将access_token定义为常量,便于使用.

$make_menu_url = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=" . ACCESS_TOKEN;

$menuData = ' {
   "button":[
   {
     "type":"click",
     "name":"今日歌曲",
     "key":"V1001_TODAY_MUSIC"
   },
   {
      "name":"菜单",
      "sub_button":[
      {
        "type":"view",
        "name":"搜索",
        "url":"http://www.soso.com/"
      },
      {
        "type":"view",
        "name":"视频",
        "url":"http://v.qq.com/"
      },
      {
        "type":"click",
        "name":"赞一下我们",
        "key":"V1001_GOOD"
      }]
    }]
 }';

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $make_menu_url);
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 6.0; Windows NT 5.1; .NET CLR 1.1.4322)");
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $menuData);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

$info = curl_exec($ch);

//判读执行过程中是否有错误,有则发送数据错误报告.
if (curl_errno($ch)) {
  echo 'Error' . curl_error($ch); //用户检查php运行环境中的curl模块开启情况.
}

curl_close($ch);
print_r($info); //查看post提交到微信服务器后,返回的数据.

自定义菜单的获取

<?php

define("APPID", "您的appid");
define("APPSECRET", "您的appsecret ");

$token_access_url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" . APPID . "&secret=" . APPSECRET;
$res = file_get_contents($token_access_url);  //获取文件内容或获取网络请求的内容
$result = json_decode($res, true);  //接受一个 JSON 格式的字符串并且把它转换为 PHP 变量
$access_token = $result['access_token'];

$make_menu_url = "https://api.weixin.qq.com/cgi-bin/menu/get?access_token=" . $access_token;

$menu_json = file_get_contents($make_menu_url);

echo $menu_json;

自定义菜单的删除

<?php

define("APPID", "您的appid");
define("APPSECRET", "您的appsecret ");

$token_access_url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" . APPID . "&secret=" . APPSECRET;
$res = file_get_contents($token_access_url);  //获取文件内容或获取网络请求的内容
$result = json_decode($res, true);  //接受一个 JSON 格式的字符串并且把它转换为 PHP 变量
$access_token = $result['access_token'];

$make_menu_url = "https://api.weixin.qq.com/cgi-bin/menu/delete?access_token=" . $access_token;

$menu_json = file_get_contents($make_menu_url);

echo $menu_json;

以上所述就是本文的全部内容了,希望对大家做微信开发有所帮助。

PHP 相关文章推荐
PHP 和 MySQL 开发的 8 个技巧
Jan 02 PHP
PHP函数篇详解十进制、二进制、八进制和十六进制转换函数说明
Dec 05 PHP
PHP 在5.1.* 和5.2.*之间 PDO数据库操作中的不同之处小结
Mar 07 PHP
php中3种方法统计字符串中每种字符的个数并排序
Aug 27 PHP
深入php self与$this的详解
Jun 08 PHP
PHP截断标题且兼容utf8和gb2312编码
Sep 22 PHP
PHP执行Curl时报错提示CURL ERROR: Recv failure: Connection reset by peer的解决方法
Jun 26 PHP
PHP中使用虚代理实现延迟加载技术
Nov 05 PHP
php抽奖概率算法(刮刮卡,大转盘)
Apr 17 PHP
PHP 表单提交及处理表单数据详解及实例
Dec 27 PHP
php获取微信共享收货地址的方法
Dec 21 PHP
laravel5.6实现数值转换
Oct 23 PHP
php简单操作mysql数据库的类
Apr 16 #PHP
PHP扩展程序实现守护进程
Apr 16 #PHP
php简单实现查询数据库返回json数据
Apr 16 #PHP
PHP中SESSION的注销与清除
Apr 16 #PHP
PHP中trim()函数简单使用指南
Apr 16 #PHP
php检查是否是ajax请求的方法
Apr 16 #PHP
php将日期格式转换成xx天前的格式
Apr 16 #PHP
You might like
dedecms中常见问题修改方法总结
2007/03/21 PHP
thinkphp微信开发(消息加密解密)
2015/12/02 PHP
PHP二维数组去重实例分析
2016/11/18 PHP
PHP中静态变量的使用方法实例分析
2016/12/01 PHP
php+mysql+ajax实现单表多字段多关键词查询的方法
2017/04/15 PHP
YII框架模块化处理操作示例
2019/04/26 PHP
javascript OFFICE控件测试代码
2009/12/08 Javascript
动态载入/删除/更新外部 JavaScript/Css 文件的代码
2010/07/03 Javascript
javascript实现日期格式转换
2014/12/16 Javascript
javascript中substring()、substr()、slice()的区别
2015/08/30 Javascript
js组件SlotMachine实现图片切换效果制作抽奖系统
2016/04/17 Javascript
浅析函数声明和函数表达式——函数声明的声明提前
2016/05/03 Javascript
AngularJS中的promise用法分析
2017/05/19 Javascript
Angular 通过注入 $location 获取与修改当前页面URL的实例
2017/05/31 Javascript
vue实现路由切换改变title功能
2019/05/28 Javascript
JavaScript的查询机制LHS和RHS解析
2019/08/16 Javascript
python计数排序和基数排序算法实例
2014/04/25 Python
Python使用Selenium+BeautifulSoup爬取淘宝搜索页
2018/02/24 Python
python利用微信公众号实现报警功能
2018/06/10 Python
Python延时操作实现方法示例
2018/08/14 Python
python pytest进阶之conftest.py详解
2019/06/27 Python
最新pycharm安装教程
2020/11/18 Python
CSS3 文字动画效果
2020/11/12 HTML / CSS
amazeui时间组件的实现示例
2020/08/18 HTML / CSS
潘多拉珠宝英国官方网上商店:PANDORA英国
2018/06/12 全球购物
美国办公用品折扣网站:Shoplet.com
2019/11/24 全球购物
买卖正宗运动鞋:GOAT
2019/12/06 全球购物
新西兰最大的连锁超市:Countdown
2020/06/04 全球购物
说出ArrayList,Vector, LinkedList的存储性能和特性
2015/01/04 面试题
如何向接受结构参数的函数传入常数值
2016/02/17 面试题
银行求职推荐信范文
2013/11/30 职场文书
交通安全标语
2014/06/06 职场文书
导游词之崇武古城
2019/10/07 职场文书
读《皮囊》有感:理解是对他人的最大的善举
2019/11/14 职场文书
在redisCluster中模糊获取key方式
2021/07/09 Redis
Python数据结构之队列详解
2022/03/21 Python