Zend Framework教程之Bootstrap类用法概述


Posted in PHP onMarch 14, 2016

本文实例讲述了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()'代替 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程序设计有所帮助。

PHP 相关文章推荐
PHP脚本的10个技巧(4)
Oct 09 PHP
PHP中一个控制字符串输出的函数
Oct 09 PHP
php str_pad 函数用法简介
Jul 11 PHP
介绍一些PHP判断变量的函数
Apr 24 PHP
php调用dll的实例操作动画与代码分享
Aug 14 PHP
浅析虚拟主机服务器php fsockopen函数被禁用的解决办法
Aug 07 PHP
ThinkPHP模板自定义标签使用方法
Jun 26 PHP
PHP引用的调用方法分析
Apr 25 PHP
使用laravel的Eloquent模型如何获取数据库的指定列
Oct 17 PHP
PHPUnit + Laravel单元测试常用技能
Nov 06 PHP
php设计模式之抽象工厂模式分析【星际争霸游戏案例】
Jan 23 PHP
php反序列化长度变化尾部字符串逃逸(0CTF-2016-piapiapia)
Feb 15 PHP
如何解决PHP使用mysql_query查询超大结果集超内存问题
Mar 14 #PHP
Zend Framework教程之资源(Resources)用法实例详解
Mar 14 #PHP
PHP访问数据库集群的方法小结
Mar 14 #PHP
php 无限级分类 获取顶级分类ID
Mar 13 #PHP
PHP实现文件上传与下载实例与总结
Mar 13 #PHP
PHP+shell脚本操作Memcached和Apache Status的实例分享
Mar 11 #PHP
PHP批量去除BOM头内容信息代码
Mar 11 #PHP
You might like
更改localhost为其他名字的方法
2014/02/10 PHP
Laravel框架学习笔记(二)项目实战之模型(Models)
2014/10/15 PHP
thinkphp文件处理类Dir.class.php的用法分析
2014/12/08 PHP
php中使用base HTTP验证的方法
2015/04/20 PHP
php数值转换时间及时间转换数值用法示例
2017/05/18 PHP
JS getMonth()日期函数的值域是0-11
2010/02/15 Javascript
基于jquery的一个图片hover的插件
2010/04/24 Javascript
两个Javascript小tip资料
2010/11/23 Javascript
得到jQuery detach()后节点中的某个值实现代码
2013/02/05 Javascript
jquery简单实现滚动条下拉DIV固定在头部不动
2013/11/25 Javascript
Javascript字符串对象的常用方法简明版
2014/06/26 Javascript
JQuery中节点遍历方法实例
2015/05/18 Javascript
详解AngularJS实现表单验证
2015/12/10 Javascript
jQuery获取父元素节点、子元素节点及兄弟元素节点的方法
2016/04/14 Javascript
基于JQuery的$.ajax方法进行异步请求导致页面闪烁的解决办法
2016/05/10 Javascript
Bootstrap布局之栅格系统详解
2016/06/13 Javascript
Bootstrap popover用法详解
2016/12/22 Javascript
js实现点击按钮复制文本功能
2020/07/20 Javascript
详解Angular5路由传值方式及其相关问题
2018/04/28 Javascript
node.js部署之启动后台运行forever的方法
2018/05/23 Javascript
关于Django显示时间你应该知道的一些问题
2017/12/25 Python
python使用itchat库实现微信机器人(好友聊天、群聊天)
2018/01/04 Python
python selenium UI自动化解决验证码的4种方法
2018/01/05 Python
python生成圆形图片的方法
2020/03/25 Python
python 地图经纬度转换、纠偏的实例代码
2018/08/06 Python
Python操作json的方法实例分析
2018/12/06 Python
python获取本周、上周、本月、上月及本季的时间代码实例
2020/09/08 Python
TripAdvisor瑞典:全球领先的旅游网站
2017/12/11 全球购物
澳大利亚礼品篮网站:Macarthur Baskets
2019/10/14 全球购物
给老师的检讨书
2014/02/11 职场文书
优秀毕业生推荐信范文
2014/03/07 职场文书
农村产权制度改革实施方案
2014/03/21 职场文书
应届大专毕业生自我鉴定
2014/04/08 职场文书
家长对孩子的评语
2014/04/18 职场文书
2016年教师节感恩寄语
2015/12/04 职场文书
MySQL去除密码登录告警的方法
2022/04/20 MySQL