asyncme/wechatdeveloper

WeChat platform and WeChat payment development tools

v1.1.13 2018-07-06 02:50 UTC

README

  • WeChatDeveloper 是基于 wechat-php-sdk 重构,优化并完善;
  • 运行最底要求 PHP 版本 5.4 , 建议在 PHP7 上运行以获取最佳性能;
  • WeChatDeveloper 针对 access_token 失效增加了自动刷新机制;
  • 微信的部分接口需要缓存数据在本地,因此对目录需要有写权限;
  • 我们鼓励大家使用 composer 来管理您的第三方库,方便后期更新操作;
  • WeChatDeveloper 已历经数个线上项目考验,欢迎 fork 或 star 此项目。

Documentation

ClassMap

Install

1.1 通过 Composer 来管理安装

# 首次安装 线上版本(稳定)
composer require AsyncMe/WeChatDeveloper

# 首次安装 开发版本(开发)
composer require AsyncMe/WeChatDeveloper dev-master

# 更新 WeChatDeveloper
composer update AsyncMe/WeChatDeveloper

1.2 如果不使用 Composer, 可以下载 WeChatDeveloper 并解压到项目中

# 在项目中加载初始化文件
include "您的目录/WeChatDeveloper/include.php";

2.1 接口实例所需参数

$config = [
    'token'          => 'xxx',
    'appid'          => 'xxx',
    'appsecret'      => 'xxxxx',
    'encodingaeskey' => 'xxxx',
    // 配置商户支付参数(可选,在使用支付功能时需要)
    'mch_id'         => "xxx",
    'mch_key'        => 'xxxx',
    // 配置商户支付双向证书目录(可选,在使用退款|打款|红包时需要)
    'ssl_key'        => '',
    'ssl_cer'        => '',
    //缓存配置
    'cache_dirvers'    => [
        // redis配置
        'driver'=>'redis',
        'config'=>[
                'host'=>'xxx',
                'pass'=>'xxx',
                'port'=>'xxx',
                'db'=>'0',
            ]
        /* file 配置
        'driver'=>'file',
        'config'=>[
                'cache_path' => 'xxx',//(可选,需拥有读写权限)
                'crypt'=>'md5',
            ],
        */
        /*
        'driver'=>'memcache',
        'config'=>[
                'host'=>'xxx',
                'port'=>'xxx',
            ]
        */
        /* 腾讯对象存储 cos,[未实现]
        'driver'=>'cos',
        'config'=>[
            'region'=>'ap-guangzhou',
            'credentials'=>[
                'appId' => 'xxx',
                'secretId'    => 'xxx',
                'secretKey' => 'xxx'
            ],

        */
    ]
];

3.1 实例指定接口

try {

    // 实例对应的接口对象
    $user = new \WeChat\User($config);
    
    // 调用接口对象方法
    $list = $user->getUserList();
    
    // 处理返回的结果
    echo '<pre>';
    var_export($list);
    
} catch (Exception $e) {

    // 出错啦,处理下吧
    echo $e->getMessage() . PHP_EOL;
    
}

Encapsulation

  • 接入验证 (初级权限)
  • 自动回复(文本、图片、语音、视频、音乐、图文) (初级权限)
  • 菜单操作(查询、创建、删除) (菜单权限)
  • 客服消息(文本、图片、语音、视频、音乐、图文) (认证权限)
  • 二维码(创建临时、永久二维码,获取二维码URL) (服务号、认证权限)
  • 长链接转短链接接口 (服务号、认证权限)
  • 标签操作(查询、创建、修改、移动用户到标签) (认证权限)
  • 网页授权(基本授权,用户信息授权) (服务号、认证权限)
  • 用户信息(查询用户基本信息、获取关注者列表) (认证权限)
  • 多客服功能(客服管理、获取客服记录、客服会话管理) (认证权限)
  • 媒体文件(上传、获取) (认证权限)
  • 高级群发 (认证权限)
  • 模板消息(设置所属行业、添加模板、发送模板消息) (服务号、认证权限)
  • 卡券管理(创建、修改、删除、发放、门店管理等) (认证权限)
  • 语义理解 (服务号、认证权限)
  • 获取微信服务器IP列表 (初级权限)
  • 微信JSAPI授权(获取ticket、获取签名) (初级权限)
  • 数据统计(用户、图文、消息、接口分析数据) (认证权限)
  • 微信支付(网页支付、扫码支付、交易退款、给粉丝打款)(认证服务号并开通支付功能)

Permission

  • 初级权限:基本权限,任何正常的公众号都有此权限
  • 菜单权限:正常的服务号、认证后的订阅号拥有此权限
  • 认证权限:分为订阅号、服务号认证,如前缀服务号则仅认证的服务号有此权限
  • 支付权限:仅认证后的服务号可以申请此权限

Copyright

  • WeChatDeveloper 基于MIT协议发布,任何人可以用在任何地方,不受约束
  • WeChatDeveloper 部分代码来自互联网,若有异议,可以联系作者进行删除