Anyon e7a8c05556 chore(repo): 统一 v8 仓库品牌名称
将 v8 重构分支中残留的 ThinkAdminDeveloper 文本统一调整为 ThinkAdmin,避免迁移到主仓库后继续暴露旧开发仓库名称。

主要内容:

- 更新 README 标题与项目描述。

- 统一 PHP 文件头注释中的项目标识。

- 同步调整测试、配置、插件与文档中的旧仓库名称文本。

- 保持旧包删除说明与架构边界测试语义不变,只清理品牌名称残留。
2026-05-08 16:15:24 +08:00

83 lines
2.2 KiB
PHP

<?php
declare(strict_types=1);
/**
* +----------------------------------------------------------------------
* | ThinkAdmin Plugin
* +----------------------------------------------------------------------
* | Copyright (c) 2014~2026 ThinkAdmin [ thinkadmin.top ]
* +----------------------------------------------------------------------
* | Official Website: https://thinkadmin.top
* +----------------------------------------------------------------------
* | Licensed: https://mit-license.org
* | Disclaimer: https://thinkadmin.top/disclaimer
* | Vip Rights: https://thinkadmin.top/vip-introduce
* +----------------------------------------------------------------------
* | Gitee Repository: https://gitee.com/zoujingli/ThinkAdmin
* | Github Repository: https://github.com/zoujingli/ThinkAdmin
* +----------------------------------------------------------------------
*/
namespace think\admin;
use think\App;
use think\Container;
/**
* 控制器助手基类.
*
* 为控制器提供通用的辅助功能,包括表单构建、查询构建、页面构建等
* 所有 Helper 类都继承自此类
*
* @class Helper
*/
abstract class Helper
{
/**
* 应用容器.
*/
public App $app;
/**
* 控制器实例.
*/
public Controller $class;
/**
* 当前请求方式.
*/
public string $method;
/**
* 自定输出格式.
*/
public string $output;
/**
* Helper 构造函数.
*
* @param App $app 应用实例
* @param Controller $class 控制器实例
*/
public function __construct(App $app, Controller $class)
{
$this->app = $app;
$this->class = $class;
// 计算指定输出格式
$output = strval($app->request->request('output', 'default'));
$method = $app->request->method() ?: ($app->runningInConsole() ? 'cli' : 'nil');
$this->method = strtolower($method);
$this->output = "{$this->method}." . strtolower($output);
}
/**
* 实例化 Helper 对象(支持依赖注入).
*
* @param mixed ...$args 构造函数参数
*/
public static function instance(...$args): static
{
return Container::getInstance()->invokeClass(static::class, $args);
}
}