<?php namespace app\service\wx; use EasyWeChat\Factory; use EasyWeChat\MiniProgram\Application; use think\facade\Config; /** * 微信小程序 * Class WechatApplets * @package app\service\wx */ class WechatApplets { private static $app = null; /** * TODO 正式上线时需要替换模板配置信息和相关小程序配置信息 */ // 订阅消息模板:预约通知 public const SUBSCRIBE_TPL_APPOINTMENT = 'uvGd7RqaegheGU-uVxR-uM3y2MadZeMOHdQaNiiWm8U'; private function __construct() { } private function __clone() { } //微信小程序实例 单例模式 public static function getInstance(): ?Application { if (self::$app == null) { Config::load('extra/wechat', 'wechat'); $conf = config('wechat'); $config = [ // 必要配置 'app_id' => $conf['applets_appId'], 'secret' => $conf['applets_appSecret'], // 返回数据类型 array | xml 'response_type' => 'array', ]; self::$app = Factory::miniProgram($config); } return self::$app; } }