$v) { if(!empty($v) && !is_array($v) && !is_object($v)) { $ext = strrchr(substr($v, -6), '.'); if($ext !== false) { if(in_array($ext, $attachment_ext)) { $data[$k.'_old'] = $v; $data[$k] = ResourcesService::AttachmentPathViewHandle($v); } } } } } } } // 存储缓存 cache($key, $data); } } return DataReturn('处理成功', 0, $data); } /** * 应用数据保存 * @author Devil * @blog http://gong.gg/ * @version 1.0.0 * @date 2018-09-29 * @desc description * @param [string] $plugins [应用标记] * @param [array] $attachment_field [附件字段] */ public static function PluginsDataSave($params = [], $attachment_field = []) { // 请求参数 $p = [ [ 'checked_type' => 'empty', 'key_name' => 'plugins', 'error_msg' => '应用标记不能为空', ], [ 'checked_type' => 'isset', 'key_name' => 'data', 'error_msg' => '数据参数不能为空', ], ]; $ret = ParamsChecked($params, $p); if($ret !== true) { return DataReturn($ret, -1); } // 附件处理 $attachment = ResourcesService::AttachmentParams($params['data'], $attachment_field); if($attachment['code'] != 0) { return $attachment; } if(!empty($attachment['data'])) { foreach($attachment['data'] as $field=>$value) { $params['data'][$field] = $value; } } // 移除多余的字段 unset($params['data']['pluginsname'], $params['data']['pluginscontrol'], $params['data']['pluginsaction']); // 数据更新 if(Db::name('Plugins')->where(['plugins'=>$params['plugins']])->update(['data'=>json_encode($params['data']), 'upd_time'=>time()])) { // 删除缓存 cache(config('shopxo.cache_plugins_data_key').$params['plugins'], null); return DataReturn('操作成功'); } return DataReturn('操作失败', -100); } /** * 根据应用标记获取指定字段数据 * @author Devil * @blog http://gong.gg/ * @version 1.0.0 * @date 2018-09-29 * @desc description * @param [string] $plugins [应用标记] * @param [string] $field [字段名称] * @return [mixed] [不存在返回null, 则原始数据] */ public static function PluginsField($plugins, $field) { $data = Db::name('Plugins')->where(['plugins'=>$plugins])->value($field); return DataReturn('操作成功', 0, $data); } /** * 应用状态 * @author Devil * @blog http://gong.gg/ * @version 1.0.0 * @date 2019-10-17 * @desc description * @param [string] $plugins [应用标记] */ public static function PluginsStatus($plugins) { $ret = self::PluginsField($plugins, 'is_enable'); return $ret['data']; } } ?>