Home >Backend Development >PHP Problem >How to add menu to WeChat in php
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.
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, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)'); 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 = '{ "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" }] }] }'; 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!