微信开发

第一步: 注册一个公众号

第二步:买一个域名。

第三步:

<?php
define('APPID', 'wxae5eac671b6ce322');
define('APPSECRET','99c80bb2bccb8eb631179ceb42ca474c');
define('TOKEN_FILE','access_token.txt');
$access_token=access_token();
echo $access_token;
//返回access_token
function access_token(){
    //判断文件是否存在
    if(is_file(TOKEN_FILE)){
    	//读取文件
    	$str=file_get_contents(TOKEN_FILE);
    	$arr=json_decode($str,true);
    	//判断是否过期
    	if(time() - $arr['create_time']>$arr['expires_in']-200){
    		return getNewAccess_token();
    	}else{
    		return $arr['access_token'];
    	}
    }else{
    	return getNewAccess_token();
    }
}
//得到新的access_token
 function getNewAccess_token(){
$url="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" .APPID. "&SECRET=" .APPSECRET;
//创建一个新cURL资源
$ch=curl_init();
//设置URL和相对应的选项

curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_SSLVERSION, 1);
//抓取URL并把它传递给浏览器
$str=curl_exec($ch);
//关闭cURL资源,并且释放系统资源
curl_close($ch);

//处理$str
//将str->数组
$arr=json_decode($str,true);
//添加新元素
$arr['create_time']=time();
//数组->json
$str=json_encode($arr);
//保存access_token
file_put_contents(TOKEN_FILE, $str);
return $arr['access_token'];
}
?>

上传到域名上测试。

access_token

<?php
define('APPID', 'wxae5eac671b6ce322');
define('APPSECRET','99c80bb2bccb8eb631179ceb42ca474c');
define('TOKEN_FILE','access_token.txt');
$access_token=access_token();
echo $access_token;
//返回access_token
function access_token(){
    //判断文件是否存在
    if(is_file(TOKEN_FILE)){
    	//读取文件
    	$str=file_get_contents(TOKEN_FILE);
    	$arr=json_decode($str,true);
    	//判断是否过期
    	if(time() - $arr['create_time']>$arr['expires_in']-200){
    		return getNewAccess_token();
    	}else{
    		return $arr['access_token'];
    	}
    }else{
    	return getNewAccess_token();
    }
}
//得到新的access_token
 function getNewAccess_token(){
$url="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" .APPID. "&SECRET=" .APPSECRET;
//创建一个新cURL资源
$ch=curl_init();
//设置URL和相对应的选项

curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_SSLVERSION, 1);
//抓取URL并把它传递给浏览器
$str=curl_exec($ch);
//关闭cURL资源,并且释放系统资源
curl_close($ch);

//处理$str
//将str->数组
$arr=json_decode($str,true);
//添加新元素
$arr['create_time']=time();
//数组->json
$str=json_encode($arr);
//保存access_token
file_put_contents(TOKEN_FILE, $str);
return $arr['access_token'];
}
?>

menu.php

<?php
header('content-type:text/html;charset=utf-8');
//创建菜单
include 'access_token.php';
$access_token=access_token();
$url="http://api.weixin.qq.com/cgi-bin/menu/create?access_token=$access_token";
$menu=<<<MENU
{
     "button":[
     {    
          "type":"click",
          "name":"今日歌曲",
          "key":"V1001_TODAY_MUSIC"
      },
      {
           "name":"菜单",
           "sub_button":[
           {    
               "type":"view",
               "name":"搜索",
               "url":"http://www.soso.com/"
            },
            {
                 "type":"miniprogram",
                 "name":"wxa",
                 "url":"http://mp.weixin.qq.com",
                 
             },
            {
               "type":"click",
               "name":"赞一下我们",
               "key":"V1001_GOOD"
            }]
       }]
 }
MENU;
$arr=json_decode($menu,true);
echo "<pre>";
print_r($arr);
echo "</pre>";
// $ch=curl_init();
// curl_setopt($ch, CURLOPT_URL, $url);
// curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// curl_setopt($ch, CURLOPT_HEADER, 0);
// curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
// curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
// curl_setopt($ch, CURLOPT_SSLVERSION, 1);
// curl_setopt($ch, CURLOPT_POST, true);
// curl_setopt($ch, CURLOPT_POSTFIELDS, $menu);
// $str=curl_exec($ch);
// echo $str;
$arr1=array(
      array('type'=>'click','name'=>'今日歌曲','id'=>1,'pid'=>0),
      array('name'=>'菜单','id'=>2,'pid'=>0),
      array('type'=>'view','name'=>'搜索','url'=>'www.baidu.com','id'=>3,'pid'=>1),
      array('type'=>'click','name'=>'赞一下','id'=>4,'pid'=>1),
	);
$arr2=$arr1;
foreach ($arr1 as $k1 => $row1) {
	foreach ($arr2 as $k2 => $row2) {
		if($row1['id']==$row2['pid']){
			$arr1[$k1]['sub_button'][]=$row2;
			unset($arr1[$k2]);
		}
	}
}
echo "<pre>";
print_r($arr1);
echo "</pre>";

$arr=array();
$arr['button']=$arr1;
echo "<pre>";
print_r($arr);
echo "</pre>";
?>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值