appid
$appsecret = 'feffb8659a14792c9323fdf';//用你自己的appsecret
$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$appid."&secret=".$appsecret;
$res = $this->http_curl($url,'get','json');
$access_token = $res['access_token'];
//将重新获取到的access_token存入session
$_SESSION['access_token'] = $access_token;
$_SESSION['expires_time'] = time() + 7200;
return $access_token;
}
}
//自定义菜单
public function definedItem(){
//创建微信菜单
//目前微信接口的调用方式都是通过curl post/get
header('content-type:text/html;charset=utf-8');//解决中文乱码
echo $access_token = $this->getWxAccessToken();
$url = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=".$access_token;
$postArr = array(
'button'=>array(
array(
'name'=>urlencode('子钦'),
'type'=>'click',
'key'=>'item1',
),//第一个一级菜单
array(
'name'=>urlencode('子钦语录'),
'sub_button'=>array(
array(
'name'=>urlencode('歌曲'),
'type'=>'click',
'key'=>'songs',
),//第一个二级菜单
array(
'name'=>urlencode('私募风云网'),
'type'=>'view',
'url'=>'http://wap.simufengyun.com',
),//第二个二级菜单
),
),//第二个一级菜单
array(
'name' =>urlencode('子钦心语'),
'type' =>'view',
'url' => 'http://wap.simufengyun.com',
),//第三个一级菜单
),
);
//其他按钮类型
$postArr2 = array(
'button'=>array(
array(
'name'=>urlencode('扫码'),
'sub_button'=>array(
array(
'type'=>"scancode_waitmsg",
'name'=>urlencode("扫码带提示"),
'key'=>"rselfmenu_0_0",
),//第一个二级菜单
array(
'type'=>"scancode_push",
'name'=>urlencode("扫码推事件"),
'key'=>"rselfmenu_0_1",
),//第二个二级菜单
),
),//第一个一级菜单
array(
'name'=>urlencode("发图"),
'sub_button'=>array(
array(
'type'=>'pic_sysphoto',
'name'=>urlencode("系统拍照发图"),
'key'=>"rselfmenu_1_0",
),//第一个二级菜单
array(
'type'=>'pic_photo_or_album',
'name'=>urlencode("拍照或者相册发图"),
'key'=>"rselfmenu_1_1",
),//第二个二级菜单
array(
'type'=>'pic_weixin',
'name'=>urlencode("微信相册发图"),
'key'=>"rselfmenu_1_2",
),//第三个二级菜单
),
),//第二个一级菜单
array(
'name'=>urlencode("发送位置"),
'type'=>"location_select",
"key"=>"rselfmenu_2_0",
),//第三个一级菜单
),
);
/*echo '<hr />';
var_dump($postArr);
echo '<hr />';
echo $postJson = urldecode(json_encode($postArr));
$res = $this->http_curl($url,'post','json',$postJson);
echo "<hr/>";
var_dump($res);*/
echo '<hr />';
var_dump($postArr2);
echo '<hr />';
echo $postJson = urldecode(json_encode($postArr2));
$res = $this->http_curl($url,'post','json',$postJson);
echo "<hr/>";
var_dump($res);
}
}
Model类
<?php
namespace Home\Model;
use Think\Model;
class WeChatModel extends Model{
//多图文的回复微信方法
public function responseNews($postObj,$arr)
{
$toUser = $postObj->FromUserName;
$fromUser = $postObj->ToUserName;
$time = time();
$template = "< |