Constants

VERSION

VERSION = '5.1.41 LTS'

Properties

$build

$build : \think\Build

Type

Build

$cache

$cache : \think\Cache

Type

Cache

$config

$config : \think\Config

Type

Config

$cookie

$cookie : \think\Cookie

Type

Cookie

$debug

$debug : \think\Debug

Type

Debug

$env

$env : \think\Env

Type

Env

$hook

$hook : \think\Hook

Type

Hook

$lang

$lang : \think\Lang

Type

Lang

$middleware

$middleware : \think\Middleware

Type

Middleware

$request

$request : \think\Request

Type

Request

$response

$response : \think\Response

Type

Response

$route

$route : \think\Route

Type

Route

$session

$session : \think\Session

Type

Session

$template

$template : \think\Template

Type

Template

$url

$url : \think\Url

Type

Url

$validate

$validate : \think\Validate

Type

Validate

$view

$view : \think\View

Type

View

$rule_name

$rule_name : \think\route\RuleName

Type

RuleName

$log

$log : \think\Log

Type

Log

$instance

$instance : \think\Container

容器对象实例

Type

Container

$instances

$instances : array

容器中的对象实例

Type

array

$bind

$bind : array

容器绑定标识

Type

array

$name

$name : array

容器标识别名

Type

array

$modulePath

$modulePath : string

当前模块路径

Type

string

$appDebug

$appDebug : bool

应用调试模式

Type

bool

$beginTime

$beginTime : float

应用开始时间

Type

float

$beginMem

$beginMem : int

应用内存初始占用

Type

int

$namespace

$namespace : string

应用类库命名空间

Type

string

$suffix

$suffix : bool

应用类库后缀

Type

bool

$routeMust

$routeMust : bool

严格路由检测

Type

bool

$appPath

$appPath : string

应用类库目录

Type

string

$thinkPath

$thinkPath : string

框架目录

Type

string

$rootPath

$rootPath : string

应用根目录

Type

string

$runtimePath

$runtimePath : string

运行时目录

Type

string

$configPath

$configPath : string

配置目录

Type

string

$routePath

$routePath : string

路由目录

Type

string

$configExt

$configExt : string

配置后缀

Type

string

$dispatch

$dispatch : \think\route\Dispatch

应用调度实例

Type

Dispatch

$bindModule

$bindModule : string

绑定模块(控制器)

Type

string

$initialized

$initialized : bool

初始化

Type

bool

Methods

getInstance()

getInstance() : static

获取当前容器的实例(单例)

Returns

static —

setInstance()

setInstance(object  $instance) : void

设置当前容器的实例

Parameters

object $instance

get()

get(string  $abstract, array|true  $vars = [], bool  $newInstance = false) : object

获取容器中的对象实例

Parameters

string $abstract

类名或者标识

array|true $vars

变量

bool $newInstance

是否每次创建新的实例

Returns

object —

set()

set(string  $abstract, mixed  $concrete = null) : \think\Container

绑定一个类、闭包、实例、接口实现到容器

Parameters

string $abstract

类标识、接口

mixed $concrete

要绑定的类、闭包或者实例

Returns

\think\Container —

remove()

remove(string  $abstract) : void

移除容器中的对象实例

Parameters

string $abstract

类标识、接口

clear()

clear() : void

清除容器中的对象实例

bindTo()

bindTo(string|array  $abstract, mixed  $concrete = null) : $this

绑定一个类、闭包、实例、接口实现到容器

Parameters

string|array $abstract

类标识、接口

mixed $concrete

要绑定的类、闭包或者实例

Returns

$this —

instance()

instance(string  $abstract, object|\Closure  $instance) : $this

绑定一个类实例当容器

Parameters

string $abstract

类名或者标识

object|\Closure $instance

类的实例

Returns

$this —

bound()

bound(string  $abstract) : bool

判断容器中是否存在类及标识

Parameters

string $abstract

类名或者标识

Returns

bool —

exists()

exists(string  $abstract) : bool

判断容器中是否存在对象实例

Parameters

string $abstract

类名或者标识

Returns

bool —

has()

has(string  $name) : bool

判断容器中是否存在类及标识

Parameters

string $name

类名或者标识

Returns

bool —

make()

make(string  $abstract, array|true  $vars = [], bool  $newInstance = false) : object

创建类的实例

Parameters

string $abstract

类名或者标识

array|true $vars

变量

bool $newInstance

是否每次创建新的实例

Returns

object —

delete()

delete(string|array  $abstract) : void

删除容器中的对象实例

Parameters

string|array $abstract

类名或者标识

all()

all() : array

获取容器中的对象实例

Returns

array —

flush()

flush() : void

清除容器中的对象实例

invokeFunction()

invokeFunction(mixed  $function, array  $vars = []) : mixed

执行函数或者闭包方法 支持参数调用

Parameters

mixed $function

函数或者闭包

array $vars

参数

Returns

mixed —

invokeMethod()

invokeMethod(mixed  $method, array  $vars = []) : mixed

调用反射执行类的方法 支持参数绑定

Parameters

mixed $method

方法

array $vars

参数

Returns

mixed —

invokeReflectMethod()

invokeReflectMethod(object  $instance, mixed  $reflect, array  $vars = []) : mixed

调用反射执行类的方法 支持参数绑定

Parameters

object $instance

对象实例

mixed $reflect

反射类

array $vars

参数

Returns

mixed —

invoke()

invoke(mixed  $callable, array  $vars = []) : mixed

调用反射执行callable 支持参数绑定

Parameters

mixed $callable
array $vars

参数

Returns

mixed —

invokeClass()

invokeClass(string  $class, array  $vars = []) : mixed

调用反射执行类的实例化 支持依赖注入

Parameters

string $class

类名

array $vars

参数

Returns

mixed —

__set()

__set(mixed  $name, mixed  $value) : mixed

Parameters

mixed $name
mixed $value

Returns

mixed —

__get()

__get(mixed  $name) : mixed

Parameters

mixed $name

Returns

mixed —

__isset()

__isset(mixed  $name) : mixed

Parameters

mixed $name

Returns

mixed —

__unset()

__unset(mixed  $name) : mixed

Parameters

mixed $name

Returns

mixed —

offsetExists()

offsetExists(mixed  $key) : mixed

Parameters

mixed $key

Returns

mixed —

offsetGet()

offsetGet(mixed  $key) : mixed

Parameters

mixed $key

Returns

mixed —

offsetSet()

offsetSet(mixed  $key, mixed  $value) : mixed

Parameters

mixed $key
mixed $value

Returns

mixed —

offsetUnset()

offsetUnset(mixed  $key) : mixed

Parameters

mixed $key

Returns

mixed —

count()

count() : mixed

Returns

mixed —

getIterator()

getIterator() : mixed

Returns

mixed —

__debugInfo()

__debugInfo() : mixed

Returns

mixed —

__construct()

__construct(mixed  $appPath = '') : mixed

Parameters

mixed $appPath

Returns

mixed —

bind()

bind(string  $bind) : $this

绑定模块或者控制器

Parameters

string $bind

Returns

$this —

path()

path(string  $path) : $this

设置应用类库目录

Parameters

string $path

路径

Returns

$this —

initialize()

initialize() : void

初始化应用

init()

init(string  $module = '') : void

初始化应用或模块

Parameters

string $module

模块名

run()

run() : \think\Response

执行应用程序

Throws

\think\Exception

Returns

\think\Response —

checkRequestCache()

checkRequestCache(string  $key, mixed  $expire = null, array  $except = [], string  $tag = null) : void

设置当前地址的请求缓存

Parameters

string $key

缓存标识,支持变量规则 ,例如 item/:name/:id

mixed $expire

缓存有效期

array $except

缓存排除

string $tag

缓存标签

setResponseCache()

setResponseCache(mixed  $cache) : mixed

Parameters

mixed $cache

Returns

mixed —

dispatch()

dispatch(\think\route\Dispatch  $dispatch) : $this

设置当前请求的调度信息

Parameters

\think\route\Dispatch $dispatch

调度信息

Returns

$this —

log()

log(mixed  $msg, string  $type = 'info') : void

记录调试信息

Parameters

mixed $msg

调试信息

string $type

信息类型

config()

config(string  $name = '') : mixed

获取配置参数 为空则获取所有配置

Parameters

string $name

配置参数名(支持二级配置 .号分割)

Returns

mixed —

routeInit()

routeInit() : void

路由初始化 导入路由定义规则

routeCheck()

routeCheck() : \think\route\Dispatch

URL路由检测(根据PATH_INFO)

Returns

\think\route\Dispatch —

routeMust()

routeMust(bool  $must = false) : $this

设置应用的路由检测机制

Parameters

bool $must

是否强制检测路由

Returns

$this —

create()

create(string  $name, string  $layer, bool  $appendSuffix = false, string  $common = 'common') : object

实例化应用类库

Parameters

string $name

类名称

string $layer

业务层名称

bool $appendSuffix

是否添加类名后缀

string $common

公共模块名

Throws

\think\exception\ClassNotFoundException

Returns

object —

model()

model(string  $name = '', string  $layer = 'model', bool  $appendSuffix = false, string  $common = 'common') : \think\Model

实例化(分层)模型

Parameters

string $name

Model名称

string $layer

业务层名称

bool $appendSuffix

是否添加类名后缀

string $common

公共模块名

Throws

\think\exception\ClassNotFoundException

Returns

\think\Model —

controller()

controller(string  $name, string  $layer = 'controller', bool  $appendSuffix = false, string  $empty = '') : object

实例化(分层)控制器 格式:[模块名/]控制器名

Parameters

string $name

资源地址

string $layer

控制层名称

bool $appendSuffix

是否添加类名后缀

string $empty

空控制器名称

Throws

\think\exception\ClassNotFoundException

Returns

object —

validate()

validate(string  $name = '', string  $layer = 'validate', bool  $appendSuffix = false, string  $common = 'common') : \think\Validate

实例化验证类 格式:[模块名/]验证器名

Parameters

string $name

资源地址

string $layer

验证层名称

bool $appendSuffix

是否添加类名后缀

string $common

公共模块名

Throws

\think\exception\ClassNotFoundException

Returns

\think\Validate —

db()

db(mixed  $config = [], bool|string  $name = false) : \think\db\Query

数据库初始化

Parameters

mixed $config

数据库配置

bool|string $name

连接标识 true 强制重新连接

Returns

\think\db\Query —

action()

action(string  $url, string|array  $vars = [], string  $layer = 'controller', bool  $appendSuffix = false) : mixed

远程调用模块的操作方法 参数格式 [模块/控制器/]操作

Parameters

string $url

调用地址

string|array $vars

调用参数 支持字符串和数组

string $layer

要调用的控制层名称

bool $appendSuffix

是否添加类名后缀

Throws

\think\exception\ClassNotFoundException

Returns

mixed —

parseClass()

parseClass(string  $module, string  $layer, string  $name, bool  $appendSuffix = false) : string

解析应用类的类名

Parameters

string $module

模块名

string $layer

层名 controller model ...

string $name

类名

bool $appendSuffix

Returns

string —

version()

version() : string

获取框架版本

Returns

string —

isDebug()

isDebug() : bool

是否为调试模式

Returns

bool —

getModulePath()

getModulePath() : string

获取模块路径

Returns

string —

setModulePath()

setModulePath(string  $path) : void

设置模块路径

Parameters

string $path

路径

getRootPath()

getRootPath() : string

获取应用根目录

Returns

string —

getAppPath()

getAppPath() : string

获取应用类库目录

Returns

string —

getRuntimePath()

getRuntimePath() : string

获取应用运行时目录

Returns

string —

getThinkPath()

getThinkPath() : string

获取核心框架目录

Returns

string —

getRoutePath()

getRoutePath() : string

获取路由目录

Returns

string —

getConfigPath()

getConfigPath() : string

获取应用配置目录

Returns

string —

getConfigExt()

getConfigExt() : string

获取配置后缀

Returns

string —

getNamespace()

getNamespace() : string

获取应用类库命名空间

Returns

string —

setNamespace()

setNamespace(string  $namespace) : $this

设置应用类库命名空间

Parameters

string $namespace

命名空间名称

Returns

$this —

getSuffix()

getSuffix() : bool

是否启用类库后缀

Returns

bool —

getBeginTime()

getBeginTime() : float

获取应用开启时间

Returns

float —

getBeginMem()

getBeginMem() : int

获取应用初始内存占用

Returns

int —

bindParams()

bindParams(\ReflectionMethod|\ReflectionFunction  $reflect, array  $vars = []) : array

绑定参数

Parameters

\ReflectionMethod|\ReflectionFunction $reflect

反射类

array $vars

参数

Returns

array —

parseParams()

parseParams(array  $params, array  $vars, int  $type) : array

解析参数

Parameters

array $params

参数列表

array $vars

参数数据

int $type

参数类别

Returns

array —

parseParamsForPHP8()

parseParamsForPHP8(array  $params, array  $vars, int  $type) : array

解析参数

Parameters

array $params

参数列表

array $vars

参数数据

int $type

参数类别

Returns

array —

getObjectParam()

getObjectParam(string  $className, array  $vars) : mixed

获取对象类型的参数值

Parameters

string $className

类名

array $vars

参数

Returns

mixed —

containerConfigUpdate()

containerConfigUpdate(mixed  $module) : mixed

Parameters

mixed $module

Returns

mixed —

getRouteCacheKey()

getRouteCacheKey() : mixed

Returns

mixed —

loadLangPack()

loadLangPack() : mixed

Returns

mixed —

parseModuleAndClass()

parseModuleAndClass(string  $name, string  $layer, bool  $appendSuffix) : array

解析模块和类名

Parameters

string $name

资源地址

string $layer

验证层名称

bool $appendSuffix

是否添加类名后缀

Returns

array —