AdminFramework ThinkPHP 助手类库
项目简介
AdminFramework ThinkPHP 是一个基于 ThinkPHP 框架的助手类库,旨在简化和加速 ThinkPHP
项目的开发过程。该类库提供了一系列的基类和工具类,涵盖了控制器、模型、业务逻辑、异常处理等多个方面,帮助开发者更加高效地构建高质量的
Web 应用。
功能特性
- 基础控制器基类:提供了增强的 HttpController 基类,简化控制器开发
- 增强模型功能:扩展了 ThinkPHP 模型,添加了默认数据加载、POST 数据处理等功能
- 业务逻辑封装:提供了业务逻辑处理相关的类,如数据查询、数据保存等
- 异常处理机制:统一的异常处理方式
- 丰富的工具类:包含配置管理、数据库操作、结果处理、路由管理等工具
- 模块化设计:清晰的目录结构,便于维护和扩展
安装要求
- PHP >= 8.0
- ThinkPHP >= 8.0
- 其他依赖项将通过 Composer 自动安装
安装方法
使用 Composer 安装:
composer require admin-framework/think
目录结构
src/
├── Base/ # 基础类
│ ├── Business.php # 业务基类
│ ├── HttpController.php # HTTP控制器基类
│ └── Model.php # 数据模型基类
├── Business/ # 业务处理类
│ ├── App.php # 应用业务类
│ ├── DataQuery.php # 数据查询类
│ └── DataSave.php # 数据保存类
├── Handler/ # 处理器
│ └── Exception.php # 异常处理器
└── Library/ # 工具库
├── Config.php # 配置管理
├── Database.php # 数据库操作
├── PearAdmin.php # PearAdmin 集成
├── Result.php # 结果处理
├── Route.php # 路由管理
├── UeditorPlus.php # UeditorPlus 集成
└── View.php # 视图管理
核心功能使用示例
1. 控制器使用示例
<?php
namespace app\controller;
use AdminFramework\Think\Base\HttpController;
class Index extends HttpController
{
protected function initialize()
{
}
public function index()
{
return $this->success('Welcome to AdminFramework ThinkPHP');
}
}
2. 模型使用示例
<?php
namespace app\model;
use AdminFramework\Think\Base\Model;
class User extends Model
{
public array $type = [
'id' => 'int',
'name' => 'string',
'age' => 'int',
'status' => 'int',
'create_time' => 'datetime',
'update_time' => 'datetime',
'delete_time' => 'datetime'
];
public array $defaultData = [
'status' => 1,
'create_time' => 'CURRENT_TIMESTAMP',
'update_time' => 'CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP'
];
protected array $json = ['extra'];
protected bool $jsonAssoc = true;
}
3. 业务逻辑使用示例
<?php
namespace app\business;
use AdminFramework\Think\Business\DataQuery;
use app\model\User;
class UserQuery extends DataQuery
{
protected string $modelClass = User::class;
public function getActiveUsers()
{
return $this->where('status', 1)->select();
}
}
开发规范
- 所有类都应遵循 PSR-4 自动加载规范
- 代码风格应遵循 PSR-12 编码规范
- 方法和属性应添加适当的注释
- 业务逻辑应尽可能封装到 Business 层
- 模型应专注于数据操作,避免包含复杂的业务逻辑
测试
运行测试用例:
composer test
贡献指南
- Fork 本仓库
- 创建您的特性分支 (
git checkout -b feature/AmazingFeature)
- 提交您的更改 (
git commit -m 'Add some AmazingFeature')
- 推送到分支 (
git push origin feature/AmazingFeature)
- 开启一个 Pull Request
许可证
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。
联系方式
更新日志
v1.0.0 (开发中)
- 初始版本
- 实现基础控制器、模型和业务类
- 提供多种工具类支持
AdminFramework ThinkPHP 助手类库 - 让 ThinkPHP 开发更简单、更高效!