您的位置:首页 > 移动开发 > 微信开发

php微信自定义菜单开发

2014-03-18 14:13 369 查看
微信自定义菜单需要有一个微信服务号,在开发之前需要获取access_token,获取方法很简单,登陆微信公众账号,进入开发者模式,就可以看到{开发者凭据}:下面AppId和AppSecret,开发者文档说明 :

接口调用请求说明

http请求方式: GET
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

参数说明

参数是否必须说明
grant_type获取access_token填写client_credential
appid第三方用户唯一凭证
secret第三方用户唯一凭证密钥,即appsecret
复制那段https链接到浏览器地址,把相应的APPID和APPSECRET替代为你自己的Appid和AppSecret,确定有浏览器会显示一行字符串,复制这个字符串中access_token=后面的那段字符串,这个就是开发自定义菜单需要用到的。

 

自定义菜单代码具体如下:

 

<?php

header("Content-type: text/html; charset=utf-8");

$access="6NlcAQRqJONBcHFteTgq7uQ0e0ajzdZkR7mekGXzHO3tTEATwOBc-JuzfmUGkL8s98RQ0VUI8fT_sWWbQfr1tQFQq4dMT-4tAOxEhoI7pXIhHwem_OE1E_K14bSAWdDIY0ZnOGxxBhHfr5dBqs7HhA";

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

//创建菜单

function createMenu($data){

 $curl = curl_init();//初始化curl会话

curl_setopt($curl, CURLOPT_URL, $url); // 要访问的地址

    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); // 对认证证书来源的检查

    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); // 从证书中检查SSL加密算法是否存在

    curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)'); // 模拟用户使用的浏览器

    // curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); // 使用自动跳转

    // curl_setopt($curl, CURLOPT_AUTOREFERER, 1); // 自动设置Referer

    curl_setopt($curl, CURLOPT_POST, 1); // 发送一个常规的Post请求

    curl_setopt($curl, CURLOPT_POSTFIELDS, $data); // Post提交的数据包

    curl_setopt($curl, CURLOPT_TIMEOUT, 30); // 设置超时限制防止死循环

    curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容

    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回

 $tmpInfo = curl_exec($curl);//执行curl会话

 if (curl_errno($curl)) {

  return curl_error($curl);

 }

 curl_close($curl);

 return $tmpInfo;

}

$data = ' {

     "button":[

     { 

          "type":"click",

          "name":"今日歌曲",

          "key":"V1001_TODAY_MUSIC"

      },

      {

           "type":"click",

           "name":"歌手简介",

           "key":"V1001_TODAY_SINGER"

      },

      {

           "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"

            }]

       }]

 }';

echo createMenu($data);//创建菜单

?>

运行代码:如果显示

{"errcode":0,"errmsg":"ok"}

则运行成功,把代码传上服务器,完成。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: