微信利用PHP创建自定义菜单的方法


Posted in PHP onAugust 01, 2016

在使用通用接口前,你需要做以下两步工作:
1.拥有一个微信公众账号,并获取到appid和appsecret(在公众平台申请内测资格,审核通过后可获得)
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 相关文章推荐
第二节 对象模型 [2]
Oct 09 PHP
php中随机显示图片的函数代码
Jun 23 PHP
php程序的国际化实现方法(利用gettext)
Aug 14 PHP
php 启动时报错的简单解决方法
Jan 27 PHP
成为好程序员必须避免的5个坏习惯
Jul 04 PHP
php中数据库连接方式pdo和mysqli对比分析
Feb 25 PHP
php在apache环境下实现gzip配置方法
Apr 02 PHP
CI操作cookie的方法分析(基于helper类库)
Mar 28 PHP
Yii针对添加行的增删改查操作示例
Oct 18 PHP
PHP使用DOM和simplexml读取xml文档的方法示例
Feb 08 PHP
PHP实现的CURL非阻塞调用类
Jul 26 PHP
阿里对象存储OSS在laravel框架中的使用方法
Oct 13 PHP
php微信浏览器分享设置以及回调详解
Aug 01 #PHP
PHP+Apache+Mysql环境搭建教程
Aug 01 #PHP
Thinkphp和Bootstrap结合打造个性的分页样式(推荐)
Aug 01 #PHP
PHP实现将MySQL重复ID二维数组重组为三维数组的方法
Aug 01 #PHP
利用PHP自动生成印有用户信息的名片
Aug 01 #PHP
php+ajax登录跳转登录实现思路
Jul 31 #PHP
nginx下安装php7+php5
Jul 31 #PHP
You might like
给初学PHP的5个入手程序
2006/11/23 PHP
require(),include(),require_once()和include_once()的异同
2007/01/02 PHP
PHP生成HTML静态页面实例代码
2008/08/31 PHP
一步一步学习PHP(1) php开发环境配置
2010/02/15 PHP
php中判断文件空目录是否有读写权限的函数代码
2012/08/07 PHP
windows服务器中检测PHP SSL是否开启以及开启SSL的方法
2014/04/25 PHP
php版微信js-sdk支付接口类用法示例
2016/10/12 PHP
PHP 将dataurl转成图片image方法总结
2016/10/14 PHP
IOS 开发之NSDictionary转换成JSON字符串
2017/08/14 PHP
Laravel 数据库加密及数据库表前缀配置方法
2019/10/10 PHP
js使用split函数按照多个字符对字符串进行分割的方法
2015/03/20 Javascript
JavaScript头像上传插件源码分享
2016/03/29 Javascript
基于 Node.js 实现前后端分离
2016/04/23 Javascript
jquery遍历table的tr获取td的值实现方法
2016/05/19 Javascript
jQuery Mobile动态刷新页面样式的实现方法
2016/05/28 Javascript
详解Vue2.0里过滤器容易踩到的坑
2017/06/01 Javascript
详解前端路由实现与react-router使用姿势
2017/08/07 Javascript
从零开始搭建webpack+react开发环境的详细步骤
2018/05/18 Javascript
浅谈vue-props的default写不写有什么区别
2020/08/09 Javascript
教你安装python Django(图文)
2013/11/04 Python
python实现爬虫下载漫画示例
2014/02/16 Python
Python实现求最大公约数及判断素数的方法
2015/05/26 Python
12步入门Python中的decorator装饰器使用方法
2016/06/20 Python
Django中的Model操作表的实现
2018/07/24 Python
详解django2中关于时间处理策略
2019/03/06 Python
Python底层封装实现方法详解
2020/01/22 Python
PyTorch在Windows环境搭建的方法步骤
2020/05/12 Python
Python 连接 MySQL 的几种方法
2020/09/09 Python
全面介绍python中很常用的单元测试框架unitest
2020/12/14 Python
美国南加州的原创极限运动潮牌:Vans(范斯)
2016/08/05 全球购物
德国最大的网上鞋店之一:Schuhe24.de
2017/06/10 全球购物
大学毕业生通用求职信
2013/09/28 职场文书
简历的个人自我评价范文
2014/01/03 职场文书
毕业生自我鉴定实例
2014/01/21 职场文书
JavaScript实现复选框全选功能
2021/04/11 Javascript
原生JS中应该禁止出现的写法
2021/05/05 Javascript