**基于`ThinkPHP3.2`加载`SDK`的方法** -- 在项目中使用`SDK`时,建议配置文件从数据库中读取,数据表结构如下: ``` --- 创建微信配置管理表 - SQL语句 CREATE TABLE `wechat_config` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `qrc_img` varchar(100) DEFAULT NULL COMMENT '公众号二维码', `token` varchar(100) DEFAULT NULL COMMENT '接口token', `appid` varchar(100) DEFAULT NULL COMMENT '公众号 app id', `encodingaeskey` varchar(100) DEFAULT NULL COMMENT '加密key', `appsecret` varchar(100) DEFAULT NULL COMMENT '公众号 密钥', `mch_id` varchar(100) DEFAULT NULL COMMENT '商户身份标识', `partnerkey` varchar(100) DEFAULT NULL COMMENT '商户权限密钥', `ssl_cer` varchar(500) DEFAULT NULL COMMENT '商户证书CER', `ssl_key` varchar(500) DEFAULT NULL COMMENT '商户证书KEY', `create_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=10000 DEFAULT CHARSET=utf8; ``` 针对于`ThinkPHP3.2`版本,我们建议在`Common/function.php`增加一个 `load_wechat`函数,我们需要对`SDK`进入加载注入。 * `SDK`加载注入,将`SDK`下载之后,放入到`Vendor`目录下,如 `Vendor/Wechat`。 * 扩展助手加载函数代码如下:针对`v1.2.3`及以上版本 ``` /** * 获取微信操作对象 * @staticvar array $wechat * @param type $type * @return WechatReceive */ function & load_wechat($type = '') { !class_exists('Wechat\Loader', FALSE) && Vendor('Wechat.Loader'); static $wechat = array(); $index = md5(strtolower($type)); if (!isset($wechat[$index])) { // 从数据库查询配置参数 $config = M('WechatConfig')->field('token,appid,appsecret,encodingaeskey,mch_id,partnerkey,ssl_cer,ssl_key,qrc_img')->find(); // 设置SDK的缓存路径 $config['cachepath'] = CACHE_PATH . 'Data/'; $wechat[$index] = \Wechat\Loader::get_instance($type, $config); } return $wechat[$index]; } ``` * 至此,就可以在项目任何地方使用`load_wechat`的函数了。 * 其它操作请阅读`SDK`详细操作手册。