<?php // +---------------------------------------------------------------------- // | CatchAdmin [Just Like ~ ] // +---------------------------------------------------------------------- // | Copyright (c) 2017~2020 http://catchadmin.com All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( https://github.com/yanwenwu/catch-admin/blob/master/LICENSE.txt ) // +---------------------------------------------------------------------- // | Author: JaguarJack [ njphper@gmail.com ] // +---------------------------------------------------------------------- namespace catchAdmin\wechat\library\messages; class Factory { /** * 对象生产 * * @time 2020年06月26日 * @param $message * @return mixed */ public static function make($message) { return self::parse($message); } /** * 解析 * * @time 2020年06月26日 * @param $message * @return mixed */ protected static function parse($message) { // 事件类型 if ($message['MsgType'] == 'event') { $event = __NAMESPACE__ . '\\events\\' . ucfirst($message['Event']); return new $event($message); } $messageClass = __NAMESPACE__ . '\\' . ucfirst($message['MsgType']); return new $messageClass($message); } }