Home >Backend Development >PHP Problem >How to add menu to WeChat in php

How to add menu to WeChat in php

藏色散人
藏色散人Original
2021-11-12 09:23:072231browse

php method to implement adding a menu on WeChat: 1. Obtain the appid and appsecret through the WeChat public account; 2. Obtain the access_token through the credential acquisition interface; 3. Through "function createMenu($data){... }" method to create a custom menu.

How to add menu to WeChat in php

The operating environment of this article: windows7 system, PHP7.1 version, DELL G3 computer

php How to add a menu on WeChat?

An example of how to create a WeChat custom menu in PHP

The details are as follows:

Before using the common interface, you need to do the following Two-step work:

1. Have a WeChat public account and obtain the appid and appsecret (apply for internal testing qualifications on the public platform and obtain them after passing the review)

2. Obtain the voucher The access_token is obtained through the interface

Note:

access_token is a ticket for a third party to access api resources;

access_token corresponds to the official account and is a globally unique ticket. Repeated acquisition will result in the above The access_token obtained this time is invalid.

Visit the following address (note to replace your appid and secret):

https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

Then you can see the return information in the browser:

{"access_token":"这里就是你的access_token","expires_in":7200}

Create a custom menu:

<?php
header("Content-type: text/html; charset=utf-8");
define("ACCESS_TOKEN", "这里填入你上面获取到的access_token");
//创建菜单
function createMenu($data){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=".ACCESS_TOKEN);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_USERAGENT, &#39;Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)&#39;);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$tmpInfo = curl_exec($ch);
if (curl_errno($ch)) {
 return curl_error($ch);
}
curl_close($ch);
return $tmpInfo;
}
//获取菜单
function getMenu(){
return file_get_contents("https://api.weixin.qq.com/cgi-bin/menu/get?access_token=".ACCESS_TOKEN);
}
//删除菜单
function deleteMenu(){
return file_get_contents("https://api.weixin.qq.com/cgi-bin/menu/delete?access_token=".ACCESS_TOKEN);
}
$data = &#39;{
   "button":[
   {
     "type":"click",
     "name":"首页",
     "key":"home"
   },
   {
      "type":"click",
      "name":"简介",
      "key":"introduct"
   },
   {
      "name":"菜单",
      "sub_button":[
      {
        "type":"click",
        "name":"hello word",
        "key":"V1001_HELLO_WORLD"
      },
      {
        "type":"click",
        "name":"赞一下我们",
        "key":"V1001_GOOD"
      }]
    }]
}&#39;;
echo createMenu($data);
//echo getMenu();
//echo deleteMenu();

Recommended learning: "PHP Video Tutorial"

The above is the detailed content of How to add menu to WeChat in php. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn