系统类库
[ 查看开发文档 ] [ 类树图: Library ] [ 索引: Library ] [ 所有元素 ] [ 首页 ]

Class: Container

源文件路径: /Library/Container.class.php

Class Overview


系统容器类


Variables

Methods


Child classes:

Context
系统上下文类

Inherited Variables

Inherited Methods


Class Details

[line 14]
系统容器类


[ Top ]


Class Variables

$aliases = []

[line 17]

  • Access: protected

Type:   mixed


[ Top ]

$extenders = []

[line 18]

  • Access: protected

Type:   mixed


[ Top ]

$instance =

[line 26]

当前容器实例对象
  • Access: protected

Type:   \Library\Container


[ Top ]

$instances = []

[line 16]

  • Access: protected

Type:   mixed


[ Top ]

$with = []

[line 19]

  • Access: protected

Type:   mixed


[ Top ]



Method Detail

build   [line 135]

mixed build( string $concrete)

实例化给定类型的具体实例
  • Throws: \Exception
  • Access: public

Parameters:

string   $concrete   — 

[ Top ]

forgetExtenders   [line 362]

void forgetExtenders( string $concrete)

删除特定类型扩展
  • Access: public

Parameters:

string   $concrete   — 

[ Top ]

forgetInstance   [line 372]

void forgetInstance( string $concrete)

更加类型删除特定实例缓存
  • Access: public

Parameters:

string   $concrete   — 

[ Top ]

forgetInstances   [line 384]

void forgetInstances( )

清空容器中的所有实例
  • Access: public

[ Top ]

getAlias   [line 349]

string getAlias( string $concrete)

获取类型别名
  • Access: public

Parameters:

string   $concrete   — 

[ Top ]

getExtenders   [line 333]

array getExtenders( string $concrete)

根据指定的类型获取特定扩展
  • Access: protected

Parameters:

string   $concrete   — 

[ Top ]

getInstance   [line 403]

static getInstance( )

获取容器单例
  • Access: public

[ Top ]

getLastParameterOverride   [line 281]

array getLastParameterOverride( )

获取最后的参数.
  • Access: protected

[ Top ]

getParameterOverride   [line 272]

mixed getParameterOverride( ReflectionParameter $dependency)

获取一个依赖项的参数
  • Access: protected

Parameters:

ReflectionParameter   $dependency   — 

[ Top ]

hasParameterOverride   [line 262]

bool hasParameterOverride( ReflectionParameter $dependency)

确定给定的依赖是否有一个参数.
  • Access: protected

Parameters:

ReflectionParameter   $dependency   — 

[ Top ]

invoke   [line 35]

mixed invoke( string|array $name, [array $parameters = []])

对象方法或函数依赖注入调用
  • Access: public

Parameters:

string|array   $name   —  调用名称,如果为字符串
array   $parameters   —  方法参数

[ Top ]

invokeFunc   [line 80]

mixed invokeFunc( string|Closure $closure, [array $parameters = []])

一般函数或Closure匿名函数调用
  • Throws: \Exception
  • Access: public

Parameters:

string|Closure   $closure   —  为一般函数名称或Closure对象,如果为Closure对象,$this指向当前容器
array   $parameters   —  方法参数

[ Top ]

invokeMethod   [line 53]

mixed invokeMethod( object|string $concrete, string $method, [array $parameters = []])

对象方法调用
  • Throws: \Exception
  • Access: public

Parameters:

object|string   $concrete   —  实例或类名
string   $method   —  方法名称
array   $parameters   —  方法参数

[ Top ]

make   [line 123]

mixed make( string $concrete, [array $parameters = []], [bool $isCache = true])

从容器中解析给定的类型
  • Access: public

Parameters:

string   $concrete   —  需要构造的类名
array   $parameters   —  参数
bool   $isCache   —  是否需要存储,默认为true

[ Top ]

resolve   [line 164]

mixed resolve( string $concrete, [array $parameters = []], [bool $isCache = true])

从容器中解析给定的类型.
  • Access: protected

Parameters:

string   $concrete   — 
array   $parameters   — 
bool   $isCache   — 

[ Top ]

resolveClass   [line 305]

mixed resolveClass( ReflectionParameter $parameter)

从容器中解决基于类的依赖关系
  • Throws: \Exception
  • Access: protected

Parameters:

ReflectionParameter   $parameter   — 

[ Top ]

resolveDependencies   [line 204]

array resolveDependencies( array $dependencies)

从反射参数中解决所有的依赖项
  • Access: protected

Parameters:

array   $dependencies   — 

[ Top ]

resolvePrimitive   [line 293]

mixed resolvePrimitive( ReflectionParameter $parameter)

解析非自定义类的原始依赖关系
  • Throws: \Exception
  • Access: protected

Parameters:

ReflectionParameter   $parameter   — 

[ Top ]

setInstance   [line 394]

static setInstance( [Container $container = null])

设置容器实例
  • Access: public

Parameters:

\Library\Container|null   $container   — 

[ Top ]


Powered by Steeze. author email: spring.wind2006@163.com