夺命雷公狗---微信开发15----编写进行创建自定义菜单
cre_menu.php 代码如下:
<?php //因为我们的自定义菜单是要调用接口的,所以要先引入get_token.php require_once "get_token.php"; $url = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token={$access_token}"; $jsonmenu = '{ "button":[ { "type":"click", "name":"编程世界", "key":"V1001_TODAY_MUSIC" }, { "name":"编程语言", "sub_button":[ { "type":"view", "name":"php", "url":"http://www.soso.com/" }, { "type":"view", "name":"java", "url":"http://v.qq.com/" }, { "type":"click", "name":"c++", "key":"V1001_GOOD" }] }] }'; //使用curl函数来请求url地址,完成创建菜单 $result = http_request($url,$jsonmenu); var_dump($result); //我把请求内容封装到函数中 function http_request($url, $data=null){ //我们使用curl函数 //初始化 $ch = curl_init(); //设置变量 curl_setopt($ch, CURLOPT_URL,$url); //这意思是,设置好发送的url地址发送到那 //curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,$url); 这样的意思是对方要不要验证,如果不用则按照下面的即可 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,FALSE); //如果不用验证,这样即可 curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,FALSE); //如果不用验证HOST主机这样即可 if(!empty($data)){ curl_setopt($ch,CURLOPT_POST,1);//启用时会发送一个常规的POST请求,就像表单提交的一样。 curl_setopt($ch,CURLOPT_POSTFIELDS,$data);//全部数据使用HTTP协议中的"POST"操作来 } curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); //将curl_exec()获取的信息以文件流的形式返回,而不是直接输出 //执行 $output = curl_exec($ch); //返回来的值是一个json格式的值 //关闭句柄 curl_close($ch); return $output; }
get_token.php 代码如下:
<?php //原理,就是使用curl函数,发出http请求,获取access_token $appid = 'wxed89d8f74fa6fc51'; $appsecret = 'd4624c36b6795d1d99dcf0547af5443d'; $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={$appid}&secret={$appsecret}"; //我们使用curl函数 //初始化 $ch = curl_init(); //设置变量 curl_setopt($ch, CURLOPT_URL,$url); //这意思是,设置好发送的url地址发送到那 //curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,$url); 这样的意思是对方要不要验证,如果不用则按照下面的即可 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,FALSE); //如果不用验证,这样即可 curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,FALSE); //如果不用验证HOST主机这样即可 curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); //将curl_exec()获取的信息以文件流的形式返回,而不是直接输出 //执行 $output = curl_exec($ch); //返回来的值是一个json格式的值 //关闭句柄 curl_close($ch); //对返回的json结果要将他转为一个数组 $jsoninfo = json_decode($output,true); //测试以下,看下是否拿到返的回数组 //var_dump($jsoninfo); $access_token = $jsoninfo['access_token'];
如果创建成功如下图所示:
在扫下二维码即可发现变化咯,嘻嘻