微信公众号创建菜单接口 有汉字创建失败

创建菜单要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;
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值