创建菜单要json 数据 用json_encode 但是汉字被转义了 就会创建失败
解决办法:
json_encode($data,JSON_UNESCAPED_UNICODE)
这样汉字就不会转义
public function wxmenu(){
//菜单上也是正序排列
$url = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=".$this->wx_token;
//$data_url = 'http://gzh.jiningmuseum.com:80910';
$data_url = 'http://jn-gzhhome.94gao.xin';
$data = [
'button'=>[
[
'name'=>'资讯',
'sub_button'=>[
[
'type'=>'view',
'name'=>'新闻',
'url'=>$data_url.'/#/fwxw',
],
[
'type'=>'view',
'name'=>'活动',
'url'=>$data_url.'/#/fwhd',
],
[
'type'=>'view',
'name'=>'通知',
'url'=>$data_url.'/#/tg',
],
]
],
[
'name'=>'导览',
'sub_button'=>[
[
'type'=>'scancode_push',
'name'=>'扫二维码',
'key'=>'erweima',
],
[
'type'=>'view',
'name'=>'陈列展览',
'url'=>$data_url.'/#/dldq',
],
[
'type'=>'view',
'name'=>'馆藏文物',
'url'=>$data_url.'/#/dlobjclass',
],
[
'type'=>'view',
'name'=>'科普学习',
'url'=>$data_url.'/#/mysr',
],
[
'type'=>'view',
'name'=>'参观指南',
'url'=>$data_url.'/#/fwcg',
],
]
],
[
'name'=>'服务',
'sub_button'=>[
[
'type'=>'view',
'name'=>'个人中心',
'url'=>$data_url.'/#/my',
],
[
'type'=>'view',
'name'=>'讲解预约',
'url'=>$data_url.'/#/fwzx',
],
[
'type'=>'view',
'name'=>'互动留言',
'url'=>$data_url.'/#/dlhd',
],
[
'type'=>'view',
'name'=>'问卷调查',
'url'=>$data_url.'/#/mywjlist',
],
[
'type'=>'view',
'name'=>'关于本馆',
'url'=>$data_url.'/#/myjn',
],
]
],
]
];
$res = $this->httpPost($url,json_encode($data,JSON_UNESCAPED_UNICODE));
dump($res);die;
}
public function httpPost($url,$data,$header=null){
//初使化init方法
$ch = curl_init();
//指定URL
curl_setopt($ch, CURLOPT_URL, $url);
//设定请求后返回结果
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//声明使用POST方式来进行发送
curl_setopt($ch, CURLOPT_POST, 1);
//发送什么数据呢
//http_build_query
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
//忽略证书
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
//忽略header头信息
curl_setopt($ch, CURLOPT_HEADER, $header);
//设置超时时间
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
//发送请求
$output = curl_exec($ch);
//关闭curl
curl_close($ch);
//返回数据
return $output;
}