Properties

$instance

$instance : \think\Container

容器对象实例

Type

\think\Container

$instances

$instances : array

容器中的对象实例

Type

array

$bind

$bind : array

容器绑定标识

Type

array

$name

$name : array

容器标识别名

Type

array

Methods

getInstance()

getInstance() : static

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

Returns

static

setInstance()

setInstance(object  $instance) : void

设置当前容器的实例

Parameters

object $instance

get()

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

获取容器中的对象实例

Parameters

string $abstract

类名或者标识

array|true $vars

变量

boolean $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) : boolean

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

Parameters

string $abstract

类名或者标识

Returns

boolean

exists()

exists(string  $abstract) : boolean

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

Parameters

string $abstract

类名或者标识

Returns

boolean

has()

has(string  $name) : boolean

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

Parameters

string $name

类名或者标识

Returns

boolean

make()

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

创建类的实例

Parameters

string $abstract

类名或者标识

array|true $vars

变量

boolean $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 = array()) : mixed

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

Parameters

mixed $function

函数或者闭包

array $vars

参数

Returns

mixed

invokeMethod()

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

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

Parameters

mixed $method

方法

array $vars

参数

Returns

mixed

invokeReflectMethod()

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

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

Parameters

object $instance

对象实例

mixed $reflect

反射类

array $vars

参数

Returns

mixed

invoke()

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

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

Parameters

mixed $callable
array $vars

参数

Returns

mixed

invokeClass()

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

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

Parameters

string $class

类名

array $vars

参数

Returns

mixed

__set()

__set(  $name,   $value) 

Parameters

$name
$value

__get()

__get(  $name) 

Parameters

$name

__isset()

__isset(  $name) 

Parameters

$name

__unset()

__unset(  $name) 

Parameters

$name

offsetExists()

offsetExists(  $key) 

Parameters

$key

offsetGet()

offsetGet(  $key) 

Parameters

$key

offsetSet()

offsetSet(  $key,   $value) 

Parameters

$key
$value

offsetUnset()

offsetUnset(  $key) 

Parameters

$key

count()

count() 

getIterator()

getIterator() 

__debugInfo()

__debugInfo() 

bindParams()

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

绑定参数

Parameters

\ReflectionMethod|\ReflectionFunction $reflect

反射类

array $vars

参数

Returns

array

getObjectParam()

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

获取对象类型的参数值

Parameters

string $className

类名

array $vars

参数

Returns

mixed