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


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 相关文章推荐
linux下 C语言对 php 扩展
Dec 14 PHP
php 获取全局变量的代码
Apr 21 PHP
PHP中改变图片的尺寸大小的代码
Jul 17 PHP
php实现rc4加密算法代码
Apr 25 PHP
php session_start()出错原因分析及解决方法
Oct 28 PHP
php获取bing每日壁纸示例分享
Feb 25 PHP
PHP 面向对象程序设计(oop)学习笔记(三) - 单例模式和工厂模式
Jun 12 PHP
PHP的switch判断语句的“高级”用法详解
Oct 01 PHP
盘点PHP和ASP.NET的10大对比!
Dec 24 PHP
php基于dom实现读取图书xml格式数据的方法
Feb 03 PHP
根据key删除数组中指定的元素实现方法
Mar 02 PHP
PHP针对redis常用操作实例详解
Aug 17 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
PHP 数组入门教程小结
2009/05/20 PHP
探讨如何把session存入数据库
2013/06/07 PHP
php中数组最简单的使用方法
2020/12/27 PHP
页面只有一个text的时候,回车自动submit的解决方法
2010/08/12 Javascript
基于Jquery的表格隔行换色,移动换色,点击换色插件
2010/12/22 Javascript
Jquery自定义button按钮的几种方法
2014/06/11 Javascript
javascript 获取HTML DOM父、子、临近节点
2014/06/16 Javascript
深入讲解AngularJS中的自定义指令的使用
2015/06/18 Javascript
jquery中ajax处理跨域的三大方式
2016/01/05 Javascript
详解nodejs模板引擎制作
2017/06/14 NodeJs
JS实现小球的弹性碰撞效果
2017/11/11 Javascript
微信小程序实现简单input正则表达式验证功能示例
2017/11/30 Javascript
JavaScript中的高级函数
2018/01/04 Javascript
JavaScript中join()、splice()、slice()和split()函数用法示例
2018/08/24 Javascript
js序列化和反序列化的使用讲解
2019/01/19 Javascript
Vue 之孙组件向爷组件通信的实现
2019/04/23 Javascript
Django+Vue实现WebSocket连接的示例代码
2019/05/28 Javascript
Vue为什么要谨慎使用$attrs与$listeners
2020/08/27 Javascript
使用Python操作Elasticsearch数据索引的教程
2015/04/08 Python
Python聊天室实例程序分享
2016/01/05 Python
python 3调用百度OCR API实现剪贴板文字识别
2018/09/04 Python
python的mysql数据库建立表与插入数据操作示例
2019/09/30 Python
python利用xpath爬取网上数据并存储到django模型中
2021/02/26 Python
PAUL HEWITT手表美国站:德国北部时尚生活配饰品牌,船锚元素
2017/11/18 全球购物
Giglio英国站:意大利奢侈品购物网
2018/03/06 全球购物
介绍Java的内部类
2012/10/27 面试题
计算机求职信
2013/12/01 职场文书
工程造价专业大学生职业规划范文
2014/03/09 职场文书
合伙协议书范本
2014/04/21 职场文书
校园环保标语
2014/06/13 职场文书
机械机修工岗位职责
2014/08/03 职场文书
党支部审查意见
2015/06/02 职场文书
《鲁班学艺》读后感3篇
2019/11/27 职场文书
Python实战之实现简易的学生选课系统
2021/05/25 Python
简单介绍Python的第三方库yaml
2021/06/18 Python
Redis Cluster 集群搭建你会吗
2021/08/04 Redis