PHPackages                             czt/think-library - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Framework](/categories/framework)
4. /
5. czt/think-library

ActiveLibrary[Framework](/categories/framework)

czt/think-library
=================

ThinkPHP development of Library

v1.1(7y ago)07MITPHPPHP &gt;=5.4

Since Apr 28Pushed 7y agoCompare

[ Source](https://github.com/niubea/think-library)[ Packagist](https://packagist.org/packages/czt/think-library)[ Docs](https://library.thinkadmin.top)[ RSS](/packages/czt-think-library/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependencies (3)Versions (3)Used By (0)

[![Latest Stable Version](https://camo.githubusercontent.com/129259b15c5e7891741ed08a5f73342beb567d7aff4d17d972e89c670e05470c/68747470733a2f2f706f7365722e707567782e6f72672f637a742f7468696e6b2d6c6962726172792f762f737461626c65)](https://packagist.org/packages/czt/think-library)[![Latest Unstable Version](https://camo.githubusercontent.com/6d57f0a9d27efce4688941ad0df79abc90d3e2b53feb69f2e76a0add83c39fbb/68747470733a2f2f706f7365722e707567782e6f72672f637a742f7468696e6b2d6c6962726172792f762f756e737461626c65)](https://packagist.org/packages/czt/think-library)[![Total Downloads](https://camo.githubusercontent.com/e86c57a17d1c0ddf8547439bcce659d282c3dbab4f17caf2a38f342bcabfad4d/68747470733a2f2f706f7365722e707567782e6f72672f637a742f7468696e6b2d6c6962726172792f646f776e6c6f616473)](https://packagist.org/packages/czt/think-library)[![License](https://camo.githubusercontent.com/189e372d7b0cd46efe20feaa3be7d7f1c89e40212d7a6cc252192bee33a71eee/68747470733a2f2f706f7365722e707567782e6f72672f637a742f7468696e6b2d6c6962726172792f6c6963656e7365)](https://packagist.org/packages/czt/think-library)

ThinkLibrary for ThinkPHP5.1
============================

[](#thinklibrary-for-thinkphp51)

ThinkLibrary 是针对 ThinkPHP5.1 版本封装的一套工具类库，方便快速构建 WEB 应用。

主要包含内容
------

[](#主要包含内容)

- 数据列表展示（可带高级搜索器）
- FORM表单处理器（表单展示及数据入库）
- 数据状态快速处理（数据指定字段更新，支持多字段同时）
- 数据安全删除处理（硬删除 + 软删除，is\_deleted 字段存在则自动软删除）
- 文件存储通用组件（本地服务存储 + 阿里云OSS存储 + 七牛云存储）
- 通用数据保存更新（通过 key 值及 where 判定是否存在，存在则更新，不存在则新增）
- 通用网络请求 （支持 get 及 post，可配置请求证书等）
- emoji 表情转义处理（部分数据库不支持保存 Emoji 表情，可用这个方法哦）
- 系统参数通用 k-v 配置（快速参数长久化配置）
- UTF8加密算法支持（安全URL参数传参数）
- 接口 CORS 跨域默认支持（输出 JSON 标准化）
- 更新功能等待您来发现哦....

参考项目
----

[](#参考项目)

- Gitee 仓库：
- Github 仓库：

使用说明
----

[](#使用说明)

- ThinkLibrary 需要Composer支持
- 安装命令 ` composer require czt/think-library 5.1.x-dev`
- 案例代码： 控制器需要继承 `library\Controller`，然后`$this`就可能使用全部功能

```
// 定义 MyController 控制器
class MyController extend \library\Controller {

    // 指定当前数据表名
    protected $dbQuery = '数据表名';

    // 显示数据列表
    public function index(){
        return $this->_page($this->dbQuery);
    }

    // 当前列表数据处理
    protected function _index_page_filter(&$data){
         foreach($data as &$vo){
            // @todo 修改原列表
         }
    }

}
```

- 必要数据库表SQL（sysconf 函数需要用到这个表）

```
CREATE TABLE `system_config` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(100) DEFAULT NULL COMMENT '配置名',
  `value` varchar(500) DEFAULT NULL COMMENT '配置值',
  PRIMARY KEY (`id`) USING BTREE,
  KEY `index_system_config_name` (`name`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='系统配置';
```

列表处理
----

[](#列表处理)

```
// 列表展示
return $this->_page($dbQuery, $isPage, $isDisplay, $total);

// 列表展示搜索器（按 name、title 模糊搜索；按 status 精确搜索）
$query = $this->_query($dbQuery)->like('name,title')->equal('status');
return $this->_page($query->db(), $isPage, $isDisplay, $total);
```

表单处理
----

[](#表单处理)

```
// 表单显示及数据更新
return $this->_form($dbQuery, $tplFile, $pkField , $where, $data);
```

删除处理
----

[](#删除处理)

```
// 数据删除处理
return $this->_deleted($dbQuery);
```

禁用启用处理
------

[](#禁用启用处理)

```
// 数据禁用处理
return $this->_save($dbQuery,['status'=>'0']);
// 数据启用处理
return $this->_save($dbQuery,['status'=>'1']);
```

文件存储组件（ oss 及 qiniu 需要配置参数）
---------------------------

[](#文件存储组件-oss-及-qiniu-需要配置参数)

```
// 配置默认存储方式
sysconf('storage_type','文件存储类型');

// OSS存储配置
sysconf('storage_oss_domain', '文件访问域名');
sysconf('storage_oss_keyid', '接口授权AppId');
sysconf('storage_oss_secret', '接口授权AppSecret');
sysconf('storage_oss_bucket', '文件存储空间名称');
sysconf('storage_oss_is_https', '文件HTTP访问协议');
sysconf('storage_oss_endpoint', '文件存储节点域名');

// 七牛云存储配置
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 = \library\File::name($url,$ext,$prv,$fun);

// 获取文件内容（自动存储方式）
$result = \library\File::get($filename)

// 保存内容到文件（自动存储方式）
boolean \library\File::save($filename,$content);

// 判断文件是否存在
boolean \library\File::has($filename);

// 获取文件信息
$result = \library\File::info($filename);

//指定存储类型（调用方法）
boolean \library\File::instance('oss')->save($filename,$content);
boolean \library\File::instance('local')->save($filename,$content);
boolean \library\File::instance('qiniu')->save($filename,$content);

$result = \library\File::instance('oss')->get($filename);
$result = \library\File::instance('local')->get($filename);
$result = \library\File::instance('qiniu')->get($filename);

boolean \library\File::instance('oss')->has($filename);
boolean \library\File::instance('local')->has($filename);
boolean \library\File::instance('qiniu')->has($filename);

$resutl = \library\File::instance('oss')->info($filename);
$resutl = \library\File::instance('local')->info($filename);
$resutl = \library\File::instance('qiniu')->info($filename);
```

通用数据保存
------

[](#通用数据保存)

```
// 指定关键列更新（$where 为扩展条件）
boolean data_save($dbQuery,$data,'pkname',$where);
```

通用网络请求
------

[](#通用网络请求)

```
// 发起get请求
$result = http_get($url,$query,$options);
\library\tools\Http::get($url,$query,$options);

// 发起post请求
$result = http_post($url,$data,$options);
\library\tools\Http::post($url,$data,$options);
```

emoji 表情转义（部分数据库不支持可以用这个）
-------------------------

[](#emoji-表情转义部分数据库不支持可以用这个)

```
// 输入数据库前转义
$content = emoji_encode($content);

// 输出数据库后转义
$content = emoji_decode($content);
```

系统参数配置（基于 system\_config 数据表）
-----------------------------

[](#系统参数配置基于-system_config-数据表)

```
// 设置参数
sysconf($keyname,$keyvalue);

// 获取参数
$keyvalue = sysconf($kename);
```

UTF8加密算法
--------

[](#utf8加密算法)

```
// 字符串加密操作
$string = encode($content);

// 加密字符串解密
$content = decode($string);
```

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity55

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

2569d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/293be1ed717c3ba946ba0cb6df7807814d3edf357a63f9675d08646344326e11?d=identicon)[pollylee](/maintainers/pollylee)

---

Top Contributors

[![niubea](https://avatars.githubusercontent.com/u/46312081?v=4)](https://github.com/niubea "niubea (3 commits)")

---

Tags

frameworkThinkAdminThinkLibrary

### Embed Badge

![Health badge](/badges/czt-think-library/health.svg)

```
[![Health](https://phpackages.com/badges/czt-think-library/health.svg)](https://phpackages.com/packages/czt-think-library)
```

###  Alternatives

[apiadmin/apiadmin

Just For Api

5024.2k](/packages/apiadmin-apiadmin)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
