ホームページ バックエンド開発 PHPチュートリアル Zend Framework教程之资源(Resources)用法实例详解_PHP

Zend Framework教程之资源(Resources)用法实例详解_PHP

May 28, 2016 am 11:48 AM
framework resources zend リソース

本文实例讲述了Zend Framework教程之资源(Resources)用法。分享给大家供大家参考,具体如下:

Zend_Application_Resource_Resource

Zend_Application_Bootstrap_ResourceBootstrapper是引导类加载注册资源插件使用的接口。
Zend_Application_Resource_Resource是一个资源插件接口。
Zend_Application_Resource_Resource通常被用于实现了Zend_Application_Bootstrap_ResourceBootstrapper的引导类中。

资源插件是一个可配置,预加载的和可以通过策略模式初始化资源的接口。

Zend_Application_Resource_Resource Interface

Method Return Value Parameters Description
__construct($options = null) Void
  • $options:可选. 配置资源.

 

setBootstrap(Zend_Application_Bootstrap_Bootstrapper $bootstrap) Zend_Application_Resource_Resource
  • $bootstrap:必填. 初始化资源的父引导类

 

getBootstrap() Zend_Application_Bootstrap_Bootstrapper N/A


setOptions(array $options) Zend_Application_Resource_Resource
  • $options:必填. 配置选项.

 

getOptions() Array N/A

 

init() Mixed N/A

采用策略模式: 运行,初始化资源.


Zend_Application_Resource_ResourceAbstract

Zend_Application_Resource_ResourceAbstract是一个抽象类,实现了Zend_Application_Resource_Resource接口,为创建自定义插件资源提供了一个便捷的方式。

注:这个抽象类没有实现init()方法,可以继承使用这个抽象类,自定义实现init方法。

Zend_Application_Resource_ResourceAbstract Methods

Method Return Value Parameters Description
__construct($options = null) Void
  • $options:可选. 配置资源

 

setBootstrap(Zend_Application_Bootstrap_Bootstrapper $bootstrap) Zend_Application_Resource_ResourceAbstract
  • $bootstrap:必填.  

 

getBootstrap() Zend_Application_Bootstrap_Bootstrapper N/A

 

setOptions(array $options) Zend_Application_Resource_ResourceAbstract
  • $options:必填.  

 

getOptions() Array N/A

 


资源名称

注册插件资源时,出现的一个问题是你应该如何从父引导类。有三种不同的机制,可以使用,这取决于你是如何配置的引导和它的插件资源。

首先,如果你的插件名称定义包含前缀路径,您可以通过他们的“短名称” - 即类的名称的一部分。例如,类“Zend_Application_Resource_View”的短名称是“View”,如果前缀路径“Zend_Application_Resource”已注册。您可能使用类的全名或短名称注册他们:

$app = new Zend_Application(APPLICATION_ENV, array(
  'pluginPaths' => array(
    'My_Resource' => 'My/Resource/',
  ),
  'resources' => array(
    // if the following class exists:
    'My_Resource_View' => array(),
    // then this is equivalent:
    'View' => array(),
  ),
));

ログイン後にコピー

以后可以使用短名称引导资源和获取:

$bootstrap->bootstrap('view');
$view = $bootstrap->getResource('view');

ログイン後にコピー

其次,如果没有匹配的插件路径的定义,你可能仍然通过使用资源类的全名。在这种情况下,你可以参考如下使用资源的完整类名:

$app = new Zend_Application(APPLICATION_ENV, array(
  'resources' => array(
    // This will load the standard 'View' resource:
    'View' => array(),
    // While this loads a resource with a specific class name:
    'My_Resource_View' => array(),
  ),
));

ログイン後にコピー

引导资源以及获取方式

$bootstrap->bootstrap('My_Resource_View');
$view = $bootstrap->getResource('My_Resource_View');
ログイン後にコピー

这给我们带来了第三个选项。您可以指定一个明确的名称,将自己注册为一个给定的资源类。这可以通过资源插件类增加 public $_explicitType的字符串值,该值将被用来指定引导插件资源。作为一个例子,让我们来定义我们自己的视图类:

class My_Resource_View extends Zend_Application_Resource_ResourceAbstract
{
  public $_explicitType = 'My_View';
  public function init()
  {
    // do some initialization...
  }
}

ログイン後にコピー

然后,我们可以引导资源或通过它的名字“My_View”获取:

$bootstrap->bootstrap('My_View');
$view = $bootstrap->getResource('My_View');

ログイン後にコピー

可以使用这些不同的命名方法,覆盖现有资源,添加您自己的,混合是i用多种资源,以实现复杂的初始化等等。

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

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

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Microsoft NET Framework のインストールの問題エラー コード 0x800c0006 の修正 Microsoft NET Framework のインストールの問題エラー コード 0x800c0006 の修正 May 05, 2023 pm 04:01 PM

開発者とエンド ユーザーが Windows 上で最新バージョンのアプリケーションを実行するには、.NET Framework 4 が必要です。しかし、.NET Framework 4 のダウンロードとインストール中に、多くのユーザーから、インストーラーが途中で停止し、「ダウンロードがエラー コード 0x800c0006 で失敗したため、.NET Framework 4 はインストールされていません」というエラー メッセージが表示されるという苦情が寄せられました。デバイスに .NETFramework4 をインストールしているときにもこの問題が発生する場合は、正しい場所にいます。

Windows 11/10 で SetupDiag を使用して Windows アップグレードの問題を特定する方法 Windows 11/10 で SetupDiag を使用して Windows アップグレードの問題を特定する方法 Apr 17, 2023 am 10:07 AM

Windows 11 または Windows 10 PC でアップグレードまたはアップデートの問題が発生すると、通常、失敗の背後にある実際の理由を示すエラー コードが表示されます。ただし、エラー コードが表示されずにアップグレードまたはアップデートが失敗すると、混乱が生じることがあります。便利なエラー コードを使用すると、問題の場所が正確にわかるので、修正を試みることができます。ただし、エラー コードが表示されないため、問題を特定して解決することが困難になります。エラーの背後にある理由を見つけるだけでも多くの時間がかかります。この場合、Microsoft が提供する SetupDiag という専用ツールを使用すると、エラーの背後にある本当の理由を簡単に特定できます。

SCNotification が動作を停止しました [問題を解決する 5 つのステップ] SCNotification が動作を停止しました [問題を解決する 5 つのステップ] May 17, 2023 pm 09:35 PM

Windows ユーザーは、コンピュータを起動するたびに「SCNotification は動作を停止しました」というエラーに遭遇する可能性があります。 SCNotification.exe は Microsoft システム通知ファイルであり、アクセス許可エラーやネットワーク障害が原因で PC を起動するたびにクラッシュします。このエラーは、問題のあるイベント名でも知られています。したがって、これは SCNotification が動作を停止したということではなく、バグ clr20r3 として認識される可能性があります。この記事では、SCNotification が動作を停止した問題を修正して再び悩まされないようにするために必要なすべての手順を説明します。 SCNotification.eとは何ですか

115 ネットワーク ディスク上のリソースを見つける方法 115 ネットワーク ディスク上のリソースを見つける方法 Feb 23, 2024 pm 05:10 PM

115 ネットワーク ディスクには大量のリソースが存在しますが、リソースを見つけるにはどうすればよいでしょうか?ユーザーはソフトウェア内で必要なリソースを検索し、ダウンロード インターフェイスに入り、ネットワーク ディスクに保存することを選択できます。 115 ネットワーク ディスク上のリソースを検索する方法のこの紹介では、具体的な内容を説明します。 115 ネットワーク ディスク上のリソースを見つけるにはどうすればよいですか? 回答: ソフトウェアでコンテンツを検索し、クリックしてネットワーク ディスクに保存します。詳細な紹介: 1. まず、アプリに必要なリソースを入力します。 2. 次に、表示されるキーワードのリンクをクリックします。 3. 次に、ダウンロード インターフェイスに入ります。 4. 内部のネットワーク ディスクに保存をクリックします。

なぜHan Xiaoquanには突然リソースがなくなったのでしょうか? なぜHan Xiaoquanには突然リソースがなくなったのでしょうか? Feb 24, 2024 pm 03:22 PM

Han Xiaoquan は多くの韓国ドラマを視聴できるソフトウェアですが、なぜ突然リソースがなくなったのですか?このソフトウェアには、ネットワークの問題、バージョンの問題、または著作権の問題により、リソースがない可能性があります。 Han Xiaoquan が突然リソースを失った理由についてのこの記事では、その具体的な内容を説明します。 Han Xiaoquan に突然リソースがなくなったのはなぜですか? 回答: ネットワークの問題、バージョンの問題、および著作権の問題のため、詳細な紹介: 1. ネットワーク問題の解決策: 別のネットワークを選択し、ソフトウェアに再度ログインして試すことができます。 。 2. バージョンの問題の解決策: ユーザーは、このソフトウェアの最新バージョンを公式 Web サイトからダウンロードできます。 3. 著作権問題への対応: 一部の韓国ドラマは著作権問題により棚から削除されていますが、他の韓国ドラマを選択して視聴することができます。

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 をインストールしている Microsoft Windows ユーザーが、将来の製品更新を通じて Microsoft にフレームワークをサポートさせることを希望する場合は、新しいバージョンの Microsoft Framework をインストールする必要があります。 Microsoft によると、3 つのフレームワークはすべて 2022 年 4 月 26 日にサポートを終了します。サポート期限が終了すると、製品は「セキュリティ修正またはテクニカル サポート」を受けられなくなります。ほとんどのホーム デバイスは、Windows アップデートを通じて最新の状態に保たれます。これらのデバイスには、.NET Framework 4.8 などの新しいバージョンのフレームワークがすでにインストールされています。自動的に更新されないデバイスは、

Windows 11 セーフ モードでの Explorer.exe のクラッシュは発生しなくなりました Windows 11 セーフ モードでの Explorer.exe のクラッシュは発生しなくなりました Aug 30, 2023 pm 11:09 PM

Windows 11 のセーフ モードで Explorer.exe がクラッシュしますか?もうない。 Microsoft は新しいパッチを Dev Channel にリリースしたところです。このリリースには新機能はありませんが、セーフ モードで Explorer.exe がクラッシュする迷惑なバグを含め、多くの修正と改善が Windows Insider プログラムに組み込まれています。まあ、少なくとも Windows Insider Program では、もうこれに別れを告げることができます。ただし、これらすべてのアップデートと同様に、ライブ Windows サーバーにも適用される予定です。 Explorer.exe がセーフ モードで動作しなくなる問題を修正しました。ただし、ファイルエクスプローラーには他にもいくつかの修正が予定されているため、Microsoftはそれを機能させることに熱心です。

Springbootでjar操作を実装し、リソースファイルを指定したディレクトリにコピーする方法 Springbootでjar操作を実装し、リソースファイルを指定したディレクトリにコピーする方法 May 12, 2023 pm 09:34 PM

Springboot は jar 操作を実装し、リソース ファイルを指定されたディレクトリにコピーします。 1. 要件 プロジェクト開発プロセス中、プロジェクトの resource/static/ ディレクトリ内のすべてのリソースを指定されたディレクトリにコピーする必要があります。会社のプロジェクトでビデオ ファイルをダウンロードする必要があります。ダウンロードには HTML ページがあるため、対応する静的リソース ファイル (js、css.jwplayer、jquery.js およびその他のファイル、jar など) をマルチチャネル ビデオの読み込みに使用します。 maven 製で、通常公開するプロジェクトのパスが塞がれているため、パスを読み込むとjar のパスが取得され、jar 内のファイルパスが取得できません。コピーするのはおそらく最初にそれを入手するためです

See all articles