1. 程式人生 > >php微信公眾平臺API介面(thinkphp5)

php微信公眾平臺API介面(thinkphp5)

整合了微信公眾號的介面。包括但不限於:獲取access_token,自定義選單,訊息管理,使用者管理等。持續更新。。。下一步增加微信支付和支付寶支付介面

介面類使用了名稱空間,可直接引入並例項化。基於thinkphp5測試。

介面類放在extend/Wechat 目錄下。測試專案附有示例:application/wechat/controller/Index.php
這裡寫圖片描述

<?php
namespace app\wechat\controller;

use think\Controller;
use Wechat\WechatMenu;
use Wechat\WechatOauth;
use
Wechat\WechatUser; class Index extends Controller { public function index(){ return $this->fetch(); } /** * 獲取公眾號access_token */ public function getAccessToken() { $wechatOauth = new WechatOauth(); $accessToken = $wechatOauth->get_access_token(); echo
$accessToken; } /** * 生成公眾號選單 */ public function createMenu() { $data = //測試資料 '{ "button":[{ "type":"click", "name":"今日歌曲2", "key":"V1001_TODAY_MUSIC" }, { "name":"選單", "sub_button":[ { "type":"view", "name":"搜尋", "url":"http://www.soso.com/" }, { "type":"click", "name":"贊一下我們", "key":"V1001_GOOD" }] }] }'
; $wechatMenu = new WechatMenu(); $result = $wechatMenu->createMenu($data); echo $result; } /** * 批量獲取關注粉絲列表 */ public function getUserLists() { $wechatUser = new WechatUser(); $result = $wechatUser->getUserList(); dump($result); } public function location() { $wechatUser = new WechatUser(); $result = $wechatUser->location('113.323916', '23.089716'); $result = json_decode($result,true); dump($result['regeocode']['addressComponent']['city']); } }

介面類註釋詳細:

class Wechat {
    /**
     * @var string|WechatReceive
     * 這裡作為微信公眾號的訊息入口(包括繫結入口)。使用者在公眾號傳送的訊息,微信伺服器會推送到這裡(index).這個類可遷到開發的請求控制器中
     */
    private $WechatReceive = '';//訊息例項
    private $WechatOauth = '';//授權例項
    private $FromUserName = '';//訊息傳送者
    private $ToUserName = '';  //訊息接受者
    private $MsgType = '';  //接收訊息的型別
    private $CreateTime = '';  //接收訊息的時間
    private $Keyword = '';  //接收訊息的值