在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:ThinkLibrary开源软件地址:https://gitee.com/zoujingli/ThinkLibrary开源软件介绍:
ThinkLibrary 6.0 for ThinkPHP 6.0ThinkLibrary 6.0 是针对 ThinkPHP 6.0 版本封装的一套工具类库,方便快速构建 Web 应用。 包含组件
参考项目ThinkAdmin - V6.0
代码仓库ThinkLibrary 为 MIT 协议开源项目,安装使用或二次开发不受约束,欢迎 fork 项目。 部分代码来自互联网,若有异议可以联系作者进行删除。
使用说明
// 定义 MyController 控制器class MyController extend \think\admin\Controller { // 指定当前数据表名 protected $dbQuery = '数据表名'; // 显示数据列表 public function index(){ $this->_page($this->dbQuery); } // 当前列表数据处理 protected function _index_page_filter(&$data){ foreach($data as &$vo){ // @todo 修改原列表 } } }
CREATE TABLE `system_data`( `id` bigint(11) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(100) DEFAULT NULL COMMENT '配置名', `value` longtext COMMENT '配置值', PRIMARY KEY (`id`) USING BTREE, KEY `idx_system_data_name` (`name`) USING BTREE) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='系统-数据';
CREATE TABLE `system_oplog`( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `node` varchar(200) NOT NULL DEFAULT '' COMMENT '当前操作节点', `geoip` varchar(15) NOT NULL DEFAULT '' COMMENT '操作者IP地址', `action` varchar(200) NOT NULL DEFAULT '' COMMENT '操作行为名称', `content` varchar(1024) NOT NULL DEFAULT '' COMMENT '操作内容描述', `username` varchar(50) NOT NULL DEFAULT '' COMMENT '操作人用户名', `create_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`id`) USING BTREE) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='系统-日志';
CREATE TABLE `system_config`( `type` varchar(20) DEFAULT '' COMMENT '分类', `name` varchar(100) DEFAULT '' COMMENT '配置名', `value` varchar(500) DEFAULT '' COMMENT '配置值', KEY `idx_system_config_type` (`type`), KEY `idx_system_config_name` (`name`) USING BTREE) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='系统-配置';
CREATE TABLE `system_queue` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `code` varchar(20) DEFAULT '' COMMENT '任务编号', `title` varchar(50) NOT NULL DEFAULT '' COMMENT '任务名称', `command` varchar(500) DEFAULT '' COMMENT '执行指令', `exec_data` longtext COMMENT '执行参数', `exec_time` bigint(20) unsigned DEFAULT '0' COMMENT '执行时间', `exec_desc` varchar(500) DEFAULT '' COMMENT '状态描述', `enter_time` bigint(20) DEFAULT '0' COMMENT '开始时间', `outer_time` bigint(20) DEFAULT '0' COMMENT '结束时间', `attempts` bigint(20) DEFAULT '0' COMMENT '执行次数', `rscript` tinyint(1) DEFAULT '1' COMMENT '单例模式', `status` tinyint(1) DEFAULT '1' COMMENT '任务状态(1新任务,2处理中,3成功,4失败)', `create_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`id`) USING BTREE, KEY `idx_system_queue_code` (`code`), KEY `idx_system_queue_title` (`title`) USING BTREE, KEY `idx_system_queue_status` (`status`) USING BTREE, KEY `idx_system_queue_rscript` (`rscript`) USING BTREE, KEY `idx_system_queue_create_at` (`create_at`) USING BTREE, KEY `idx_system_queue_exec_time` (`exec_time`) USING BTREE) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='系统-任务'; 列表处理// 列表展示$this->_page($dbQuery, $isPage, $isDisplay, $total);// 列表展示搜索器(按 name、title 模糊搜索;按 status 精确搜索)$this->_query($dbQuery)->like('name,title')->equal('status')->page();// 对列表查询器进行二次处理$query = $this->_query($dbQuery)->like('name, title')->equal('status');$db = $query->db(); // @todo 这里可以对db进行操作$this->_page($db); // 显示列表分页 表单处理// 表单显示及数据更新$this->_form($dbQuery, $tplFile, $pkField , $where, $data); 删除处理// 数据删除处理$this->_deleted($dbQuery); 禁用启用处理// 数据禁用处理$this->_save($dbQuery, ['status'=>'0']);// 数据启用处理$this->_save($dbQuery, ['status'=>'1']); 文件存储组件( oss 及 qiniu 需要配置参数)// 配置默认存储方式 sysconf('storage.type','文件存储类型');// 七牛云存储配置sysconf('storage.qiniu_region', '文件存储节点');sysconf('storage.qiniu_domain', '文件访问域名');sysconf('storage.qiniu_bucket', '文件存储空间名称');sysconf('storage.qiniu_is_https', '文件HTTP访问协议');sysconf('storage.qiniu_access_key', '接口授权AccessKey');sysconf('storage.qiniu_secret_key', '接口授权SecretKey');// 生成文件名称(链接url或文件md5)$filename = \think\admin\Storage::name($url, $ext, $prv, $fun);// 获取文件内容(自动存储方式)$result = \think\admin\Storage::get($filename);// 保存内容到文件(自动存储方式)$result = \think\admin\Storage::save($filename, $content);// 判断文件是否存在boolean \think\admin\Storage::has($filename);// 获取文件信息$result = \think\admin\Storage::info($filename);//指定存储类型(调用方法)$result = \think\admin\Storage::instance('local')->save($filename, $content);$result = \think\admin\Storage::instance('qiniu')->save($filename, $content);$result = \think\admin\Storage::instance('txcos')->save($filename, $content);$result = \think\admin\Storage::instance('alioss')->save($filename, $content);// 读取文件内容$result = \think\admin\Storage::instance('local')->get($filename);$result = \think\admin\Storage::instance('qiniu')->get($filename);$result = \think\admin\Storage::instance('txcos')->get($filename);$result = \think\admin\Storage::instance('alioss')->get($filename);// 生成 URL 访问地址$result = \think\admin\Storage::instance('local')->url($filename);$result = \think\admin\Storage::instance('qiniu')->url($filename);$result = \think\admin\Storage::instance('txcos')->url($filename);$result = \think\admin\Storage::instance('alioss')->url($filename);// 检查文件是否存在boolean \think\admin\Storage::instance('local')->has($filename);boolean \think\admin\Storage::instance('qiniu')->has($filename);boolean \think\admin\Storage::instance('txcos')->has($filename);boolean \think\admin\Storage::instance('alioss')->has($filename);// 生成文件信息$resutl = \think\admin\Storage::instance('local')->info($filename);$resutl = \think\admin\Storage::instance('qiniu')->info($filename);$resutl = \think\admin\Storage::instance('txcos')->info($filename);$resutl = \think\admin\Storage::instance('alioss')->info($filename); 通用数据保存// 指定关键列更新($where 为扩展条件)boolean data_save($dbQuery, $data, 'pkname', $where); 通用网络请求// 发起get请求$result = http_get($url, $query, $options);// 发起post请求$result = http_post($url, $data, $options); 系统参数配置(基于 system_config 数据表)// 设置参数sysconf($keyname, $keyvalue);// 获取参数$keyvalue = sysconf($kename); UTF8加密算法// 字符串加密操作$string = encode($content);// 加密字符串解密$content = decode($string); 赞助打赏 |
请发表评论