search
HomeBackend DevelopmentPHP TutorialZend Framework教程之Bootstrap类用法概述_php实例

本文实例讲述了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';
}

更多关于zend相关内容感兴趣的读者可查看本站专题:《Zend FrameWork框架入门教程》、《php优秀开发框架总结》、《Yii框架入门及常用技巧总结》、《ThinkPHP入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
10款好看又实用的Bootstrap后台管理系统模板(快来下载)10款好看又实用的Bootstrap后台管理系统模板(快来下载)Aug 06, 2021 pm 01:55 PM

一个好的网站,不能只看外表,网站后台同样很重要。本篇文章给大家分享10款好看又实用的Bootstrap后台管理系统模板,可以帮助大家快速建立强大有美观的网站后台,欢迎下载使用!如果想要获取更多后端模板,请关注php中文网后端模板栏目!

Microsoft NET Framework 安装问题 错误代码 0x800c0006 修复Microsoft NET Framework 安装问题 错误代码 0x800c0006 修复May 05, 2023 pm 04:01 PM

.NETFramework4是开发人员和最终用户在Windows上运行最新版本的应用程序所必需的。但是,在下载安装.NETFramework4时,许多用户抱怨安装程序在中途停止,显示以下错误消息-“ .NETFramework4hasnotbeeninstalledbecauseDownloadfailedwitherrorcode0x800c0006 ”。在您的设备上安装.NETFramework4时,如果您也在体验它,那么您就来对了地方

如何在 Windows 11/10 上使用 SetupDiag 识别 Windows 升级问题如何在 Windows 11/10 上使用 SetupDiag 识别 Windows 升级问题Apr 17, 2023 am 10:07 AM

每当您的Windows11或Windows10PC出现升级或更新问题时,您通常会看到一个错误代码,指示故障背后的实际原因。但是,有时,升级或更新失败可能不会显示错误代码,这时就会出现混淆。有了方便的错误代码,您就可以确切地知道问题出在哪里,因此您可以尝试修复。但是由于没有出现错误代码,因此识别问题并解决它变得极具挑战性。这会占用您大量时间来简单地找出错误背后的原因。在这种情况下,您可以尝试使用Microsoft提供的名为SetupDiag的专用工具,该工具可帮助您轻松识别错误背后的真

7款实用响应式Bootstrap电商源码模板(快来下载)7款实用响应式Bootstrap电商源码模板(快来下载)Aug 31, 2021 pm 02:13 PM

好看又实用的Bootstrap电商源码模板可以提高建站效率,下面本文给大家分享7款实用响应式Bootstrap电商源码,均可免费下载,欢迎大家使用!更多电商源码模板,请关注php中文网电商源码​栏目!

SCNotification 已停止工作 [修复它的 5 个步骤]SCNotification 已停止工作 [修复它的 5 个步骤]May 17, 2023 pm 09:35 PM

作为Windows用户,您很可能会在每次启动计算机时遇到SCNotification已停止工作错误。SCNotification.exe是一个微软系统通知文件,由于权限错误和点网故障等原因,每次启动PC时都会崩溃。此错误也以其问题事件名称而闻名。因此,您可能不会将其视为SCNotification已停止工作,而是将其视为错误clr20r3。在本文中,我们将探讨您需要采取的所有步骤来修复SCNotification已停止工作,以免它再次困扰您。什么是SCNotification.e

8款Bootstrap企业公司网站模板(源码免费下载)8款Bootstrap企业公司网站模板(源码免费下载)Aug 24, 2021 pm 04:35 PM

好看又实用的企业公司网站模板可以提高您的建站效率,下面PHP中文网为大家分享8款Bootstrap企业公司网站模板,均可免费下载,欢迎大家使用!更多企业站源码模板,请关注php中文网企业站源码栏目!

Microsoft .NET Framework 4.5.2、4.6 和 4.6.1 将于 2022 年 4 月终止支持Microsoft .NET Framework 4.5.2、4.6 和 4.6.1 将于 2022 年 4 月终止支持Apr 17, 2023 pm 02:25 PM

已安装Microsoft.NET版本4.5.2、4.6或4.6.1的MicrosoftWindows用户如果希望Microsoft将来通过产品更新支持该框架,则必须安装较新版本的Microsoft框架。据微软称,这三个框架都将在2022年4月26日停止支持。支持日期结束后,产品将不会收到“安全修复或技术支持”。大多数家庭设备通过Windows更新保持最新。这些设备已经安装了较新版本的框架,例如.NETFramework4.8。未自动更新的设备可能

bootstrap中sm是什么意思bootstrap中sm是什么意思May 06, 2022 pm 06:35 PM

在bootstrap中,sm是“小”的意思,是small的缩写;sm常用于表示栅格类“.col-sm-*”,是小屏幕设备类的意思,表示显示大小大于等于768px并且小于992px的屏幕设备,类似平板设备。

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
1 months agoBy尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

mPDF

mPDF

mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools