PHPackages                             admin-framework/helper - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. admin-framework/helper

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

admin-framework/helper
======================

AdminFramework Helper 是一套功能丰富的 PHP 助手类库，提供了各种常用功能的封装，旨在提高开发效率和代码质量。

00PHP

Since Dec 19Pushed 6mo agoCompare

[ Source](https://github.com/admin-framework/helper)[ Packagist](https://packagist.org/packages/admin-framework/helper)[ RSS](/packages/admin-framework-helper/feed)WikiDiscussions master Synced today

READMEChangelogDependenciesVersions (1)Used By (0)

AdminFramework Helper
=====================

[](#adminframework-helper)

AdminFramework Helper 是一套功能丰富的 PHP 助手类库，提供了各种常用功能的封装，旨在提高开发效率和代码质量。

功能特性
----

[](#功能特性)

- **加密解密**：AES、RSA 加密解密，确保数据安全
- **数组处理**：数组转树结构、数组操作等
- **文件操作**：文件上传、下载、目录操作、ZIP 压缩等
- **网络请求**：CURL 请求封装，支持各种 HTTP 方法
- **时间处理**：时间格式化、时区转换等
- **字符串处理**：随机字符串生成、字符串格式化等
- **对象操作**：对象属性操作等
- **雪花算法**：分布式唯一 ID 生成
- **Redis 操作**：Redis 客户端封装
- **Google 验证码**：Google Authenticator 集成
- **HTML 处理**：HTML 标签处理
- **属性操作**：动态属性设置和获取
- **结果封装**：统一的 API 响应格式

安装
--

[](#安装)

使用 Composer 安装：

```
composer require admin-framework/helper
```

助手类列表
-----

[](#助手类列表)

### 1. Aes - AES 加密助手

[](#1-aes---aes-加密助手)

提供 AES 加密和解密功能，支持多种加密模式。

**主要方法**：

- `encrypt($string)`: 加密字符串
- `decrypt($string)`: 解密字符串
- `setKey($key)`: 设置加密密钥
- `setMethod($method)`: 设置加密方法

**示例**：

```
use AdminFramework\Helper\Aes;

$aes = Aes::factory()->setKey('your-secret-key');
$encrypted = $aes->encrypt('Hello World');
$decrypted = $aes->decrypt($encrypted);
```

### 2. Arr - 数组助手

[](#2-arr---数组助手)

提供数组操作和转换功能，特别是数组转树结构。

**主要方法**：

- `tree($data, $parentId = null, $dataProcessing = null, $treeKey = 'children', $idKey = 'id', $parentKey = 'parent_id')`: 数组转树结构
- `navOption($data, $parentId = 0, $p = 0, $parentIdKey = 'parent_id', $idKey = 'id', $titleKey = 'title')`: 数组转换为选项列表

**示例**：

```
use AdminFramework\Helper\Arr;

$data = [
    ['id' => 1, 'name' => 'Item 1', 'parent_id' => 0],
    ['id' => 2, 'name' => 'Item 2', 'parent_id' => 1],
];
$tree = Arr::factory()->tree($data);
$options = Arr::factory()->navOption($data);
```

### 3. Curl - 网络请求助手

[](#3-curl---网络请求助手)

封装了 CURL 功能，支持各种 HTTP 请求方法。

**主要方法**：

- `get($url, $params = [])`: GET 请求
- `post($url, $params = [])`: POST 请求
- `put($url, $params = [])`: PUT 请求
- `delete($url, $params = [])`: DELETE 请求

**示例**：

```
use AdminFramework\Helper\Curl;

$curl = Curl::factory();
$response = $curl->get('https://api.example.com/users');
```

### 4. File - 文件助手

[](#4-file---文件助手)

提供文件和目录操作功能。

**主要方法**：

- `getDirFiles($dir, $recursive = false)`: 获取指定目录内的目录和文件
- `createDir($path, $mode = 0777, $recursive = true)`: 创建目录
- `deleteDir($dir, $deleteSelf = true)`: 删除目录
- `createFile($filename, $data = '', $overWrite = false)`: 创建文件
- `copy($src, $dst)`: 复制文件或目录
- `move($old, $new)`: 移动文件或目录
- `formatSizeUnits($bytes)`: 文件大小格式化
- `zip($dir, $zipName)`: 压缩目录
- `readCsv($filename, $hasHeader = true, $delimiter = ',', $enclosure = '"', $escape = '\\')`: 使用yield读取CSV文件
- `fileStrReplace($content, $attr = [], $separator = '#')`: 文件内容替换

**示例**：

```
use AdminFramework\Helper\File;

$file = File::factory();
$file->createDir('/path/to/dir');
$file->createFile('/path/to/file.txt', 'Hello World');
$zipPath = $file->zip('/path/to/dir', '/path/to/archive.zip');
```

### 5. Rsa - RSA 加密助手

[](#5-rsa---rsa-加密助手)

提供 RSA 密钥生成、加密解密和签名验证功能。

**主要方法**：

- `generateKeyPair($config = [])`: 生成 RSA 密钥对
- `publicEncrypt($string)`: 公钥加密
- `privateDecrypt($string)`: 私钥解密
- `sign($data)`: 私钥签名
- `verify($data, $signature)`: 公钥验证签名

**示例**：

```
use AdminFramework\Helper\Rsa;

$rsa = Rsa::factory();
$keyPair = $rsa->generateKeyPair();
$encrypted = $rsa->publicEncrypt('Hello World');
$decrypted = $rsa->privateDecrypt($encrypted);
```

### 6. Time - 时间助手

[](#6-time---时间助手)

提供时间格式化和时区转换功能。

**主要方法**：

- `setTimezone($timezone)`: 设置时区
- `format($format)`: 格式化时间
- `add($interval)`: 增加时间
- `sub($interval)`: 减少时间

**示例**：

```
use AdminFramework\Helper\Time;

$time = Time::factory()->setTimezone('Asia/Shanghai');
$formatted = $time->format('Y-m-d H:i:s');
```

### 7. Str - 字符串助手

[](#7-str---字符串助手)

提供字符串操作和处理功能。

**主要方法**：

- `random($length = 10, $options = [])`: 生成随机字符串
- `camelCase($str, $delimiter = '_', $ucFirst = true)`: 转换字符串为驼峰式
- `unCamelCase($str, $delimiter = '_')`: 转换驼峰式为指定分隔符格式
- `mask($str, $start = 3, $length = 4, $mask = '*')`: 隐藏部分字符串(常用数据脱敏)
- `limit($str, $limit = 100, $end = '...')`: 限制字符串长度并在超出时添加后缀
- `title($value)`: 转为首字母大写的标题格式
- `str_starts_with($haystack, $needle)`: 判断字符串是否以指定前缀开头

**示例**：

```
use AdminFramework\Helper\Str;

$str = Str::factory();
$random = $str->random(16, ['symbols' => true]);
$camelCase = Str::camelCase('hello_world');
$masked = Str::mask('13800138000', 3, 4);
```

### 8. Snowflake - 雪花算法助手

[](#8-snowflake---雪花算法助手)

提供分布式唯一 ID 生成功能。

**主要方法**：

- `id()`: 生成唯一 ID

**示例**：

```
use AdminFramework\Helper\Snowflake;

$snowflake = Snowflake::factory();
$id = $snowflake->id();
```

### 9. Redis - Redis 助手

[](#9-redis---redis-助手)

封装了 Redis 客户端功能。

**主要方法**：

- `set($key, $value, $expire = null)`: 设置键值对
- `get($key)`: 获取键值
- `del($key)`: 删除键
- `incr($key)`: 自增

**示例**：

```
use AdminFramework\Helper\Redis;

$redis = Redis::factory()->connect('localhost', 6379);
$redis->set('name', 'AdminFramework');
$name = $redis->get('name');
```

### 10. GoogleAuthenticator - Google 验证码助手

[](#10-googleauthenticator---google-验证码助手)

提供 Google Authenticator 集成功能。

**主要方法**：

- `createSecret()`: 创建密钥
- `getQRCodeUrl($name, $secret)`: 获取二维码 URL
- `verifyCode($secret, $code)`: 验证验证码

**示例**：

```
use AdminFramework\Helper\GoogleAuthenticator;

$ga = GoogleAuthenticator::factory();
$secret = $ga->createSecret();
$qrcodeUrl = $ga->getQRCodeUrl('User', $secret);
$isValid = $ga->verifyCode($secret, '123456');
```

### 11. Html - HTML 助手

[](#11-html---html-助手)

提供 HTML 标签处理功能。

**主要方法**：

- `stripTags($html, $allowed = '')`: 去除 HTML 标签
- `entities($string)`: 转义 HTML 实体
- `decodeEntities($string)`: 解码 HTML 实体

**示例**：

```
use AdminFramework\Helper\Html;

$html = Html::factory();
$clean = $html->stripTags('Hello World', '');
```

### 12. Obj - 对象助手

[](#12-obj---对象助手)

提供对象操作功能。

**主要方法**：

- `toArray($object)`: 对象转数组
- `toJson($object)`: 对象转 JSON
- `getProperty($object, $property)`: 获取对象属性

**示例**：

```
use AdminFramework\Helper\Obj;

$obj = Obj::factory();
$array = $obj->toArray($stdObject);
$json = $obj->toJson($stdObject);
```

### 13. Attribute - 属性助手

[](#13-attribute---属性助手)

提供动态属性设置和获取功能。

**主要方法**：

- `setAttribute($name, $value)`: 设置属性
- `getAttribute($name)`: 获取属性
- `hasAttribute($name)`: 检查属性是否存在

**示例**：

```
use AdminFramework\Helper\Attribute;

$attr = Attribute::factory();
$attr->setAttribute('name', 'AdminFramework');
$name = $attr->getAttribute('name');
```

### 14. Result - 结果助手

[](#14-result---结果助手)

提供统一的 API 响应格式。

**主要方法**：

- `success($data = [])`: 成功响应
- `error($message = '', $code = 0)`: 错误响应
- `setCode($code)`: 设置响应码
- `setMessage($message)`: 设置响应消息

**示例**：

```
use AdminFramework\Helper\Result;

$result = Result::factory();
$response = $result->success(['data' => 'Hello World']);
// 输出: {"code":0,"message":"success","data":{"data":"Hello World"}}
```

使用工厂模式
------

[](#使用工厂模式)

所有助手类都支持工厂模式创建实例：

```
use AdminFramework\Helper\Str;

// 使用工厂模式创建实例
$str = Str::factory();

// 链式调用
$result = $str->random(10)->upper();
```

贡献
--

[](#贡献)

欢迎提交 Issue 和 Pull Request！

许可证
---

[](#许可证)

Apache License 2.0

###  Health Score

16

—

LowBetter than 4% of packages

Maintenance46

Moderate activity, may be stable

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity13

Early-stage or recently created project

 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.

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/157520058?v=4)[AdminFramework](/maintainers/AdminFramework)[@adminframework](https://github.com/adminframework)

---

Top Contributors

[![admin-framework](https://avatars.githubusercontent.com/u/29792403?v=4)](https://github.com/admin-framework "admin-framework (20 commits)")

### Embed Badge

![Health badge](/badges/admin-framework-helper/health.svg)

```
[![Health](https://phpackages.com/badges/admin-framework-helper/health.svg)](https://phpackages.com/packages/admin-framework-helper)
```

###  Alternatives

[pitchart/transformer

A transducers implementation in PHP, with OOP powers

1017.0k](/packages/pitchart-transformer)

PHPackages © 2026

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