本文实例讲述了Zend Framework中Bootstrap类用法。分享给大家供大家参考,具体如下:
Zend_Application_Bootstrap_Bootstrapper
Zend_Application_Bootstrap_Bootstrapper是所有引导类必须实现的基本接口。基本功能是用于配置,注册资源,引导(无论是单个资源或整个应用程序),并运行应用程序。
接口方法:
Zend_Application_Bootstrap_Bootstrapper Interface
Method | Return Value | Parameters | Description |
---|---|---|---|
__construct( $application ) | Void | $application: 必填的。 接受一个Zend_Application 或一个Zend_Application_Bootstrap_Bootstrapper对象作为唯一的参数。 | 构造方法。接受一个参数,参数要求是一个Zend_Application对象,或另一个引导对象。 |
setOptions( array $options) | Zend_Application_Bootstrap_Bootstrapper | $options: 必填. 配置选项数组 | 通常情况下, 选项都可以匹配映射到对应的setter;否则,选项仅仅会被存储,便于以后查找 |
getApplication() | Zend_Application |Zend_Application_Bootstrap_Bootstrapper | N/A | 获取application实例 |
getEnvironment() | String | N/A | 获取environment |
getClassResources() | Array | N/A | 获取可以可用的资源 |
bootstrap($resource = null) | Mixed | $resource: 可选. | 如果 $resource为空,注册所有资源.如果为字符串注册指定的资源;如果是数组, 只注册指定的资源. |
run() | Void | N/A | 执行引导. |
Zend_Application_Bootstrap_ResourceBootstrapper
Zend_Application_Bootstrap_ResourceBootstrapper是一个接口,用于引导类加载注册外部资源 。 也就是说,一个或多个资源不会直接在类中定义,而是通过插件形式引入。它应该与Zend_Application_Bootstrap_Bootstrapper结合使用; Zend_Application_Bootstrap_BootstrapAbstract实现了这个功能。
接口方法:
Zend_Application_Bootstrap_ResourceBootstrapper Interface
Method | Return Value | Parameters | Description |
---|---|---|---|
registerPluginResource($resource, $options = null) | Zend_Application_Bootstrap_ResourceBootstrapper | $resource: 必填,要求是资源名称。 或者Zend_Application_Resource_Resource对象 $options: 可选. 数组或Zend_Config对象,传递要注册的资源的实例。 | 用于注册资源类,通过可选选项传递资源 |
unregisterPluginResource($resource) | Zend_Application_Bootstrap_ResourceBootstrapper | $resource: 必填的。注销注册资源的名称 | 删除插件资源 |
hasPluginResource($resource) | Boolean | $resource: 必填. 资源名称. | |
getPluginResource($resource) | Zend_Application_Resource_Resource | $resource: 必填. 资源名称 | |
getPluginResourceNames() | Array | N/A | |
setPluginLoader(Zend_Loader_PluginLoader_Interface $loader) | Zend_Application_Bootstrap_ResourceBootstrapper | $loader: 必填. | |
getPluginLoader() | Zend_Loader_PluginLoader_Interface | N/A |
Zend_Application_Bootstrap_BootstrapAbstract
Zend_Application_Bootstrap_BootstrapAbstract是一个抽象类,它提供了一个通用的引导基本功能。它实现了Zend_Application_Bootstrap_Bootstrapper和Zend_Application_Bootstrap_ResourceBootstrapper。
Zend_Application_Bootstrap_BootstrapAbstract Methods
Method | Return Value | Parameters | Description |
---|---|---|---|
__construct($application) | Void | $application: 必填. | Accepts either a Zend_Application or a Zend_Application_Bootstrap_Bootstrapper object as the sole argument. |
setOptions(array $options) | Zend_Application_Bootstrap_Bootstrapper | $options: 必填. 选项数组 | 所有选项都可以映射到选项指定的setter, 否则,该选项将只是被存储供以后查找 例如,如果在扩展类中定义一个setFoo() 方法,可以通过foo选项传递值 也可用于两个额外的,特殊的选项。 pluginPaths用于指定资源插件路径前缀,它应该是一个前缀为文件系统路径的类的关联数组。 resources用于指定资源插件,并应包括插件资源实例的配置选项。 |
getOptions() | Array | N/A | |
hasOption($key) | Boolean | $key: 必填. . | |
getOption($key) | Mixed | $key: 必填. | 不存在返回 NULL |
setApplication(Zend_Application | Zend_Application_Bootstrap_Bootstrapper $application) | Zend_Application_Bootstrap_BootstrapAbstract | $application: 必填. | |
getApplication() | Zend_Application |Zend_Application_Bootstrap_Bootstrapper | N/A | |
getEnvironment() | String | N/A | |
getClassResources() | Array | N/A | |
getContainer() | Object | N/A | 获取存储资源的容器。如果没有容器,可以通过Zend_Registry注册,然后返回一个Zend_Registry实例。 |
setContainer($container) | Zend_Application_Bootstrap_BootstrapAbstract | $container,必填. 存放资源对象的容器对象 | |
hasResource($name) | Boolean | $name, 必填. 资源名称 | |
getResource($name) | Mixed | $name, 必填. 资源名称 | |
bootstrap($resource = null) | Mixed | $resource: 可选. | 如果 $resource为空,注册所有资源.如果为字符串注册指定的资源;如果是数组, 只注册指定的资源. |
run() | Void | N/A | |
__call($method, $args) | Mixed | $method: 必填. 方法名. $args: 必填. 方法参数数组. |
为了方便可以用'bootstrap |
Zend_Application_Bootstrap_Bootstrap
Zend_Application_Bootstrap_Bootstrap是Zend_Application_Bootstrap_BootstrapAbstract具体实现。它的主要功能是,注册资源,然后运行 run() 方法。
在大多数情况下,你可以根据自己的引导需求继承这个类或直接使用这个类,并来注册资源插件。
启用 Application 自动加载功能
此外,该引导的实现提供了自动加载指定“命名空间”或指定资源类的前缀的功能
本质上,它实例化一个Zend_Application_Module_Autoloader的对象,参数为命名空间和引导类的目录。可以开启这个功能,通过 “appnamespace”配置选项设置命名空间。
As an INI example:
appnamespace = "Application"
Or in XML:
<appnamespace>Application</appnamespace>
默认情况下,Zend_Tool提供“Application”命名空间。
或者,可以在bootstrap类中通过$_appNamespace属性指定命名空间。
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap { protected $_appNamespace = 'Application'; }
希望本文所述对大家PHP程序设计有所帮助。
Zend Framework教程之Bootstrap类用法概述
- Author -
coder声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@