在微信5.0以前,自定义菜单是作为一种内测资格使用的,只有少数公众帐号拥有菜单,因此出现很多企业为了弄到菜单不惜重金求购。现如今,一大批帐号从订阅号转为服务号,很多都是奔着自定义菜单去的。今天我们就来简单研究下微信自定义菜单的处理。
自定义菜单的创建
<?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中文网其他相关文章!