Inhaltsverzeichnis
Zend Framework自定义Helper类相关注意事项总结,zendhelper
您可能感兴趣的文章:
Heim Backend-Entwicklung PHP-Tutorial Zend Framework自定义Helper类相关注意事项总结,zendhelper_PHP教程

Zend Framework自定义Helper类相关注意事项总结,zendhelper_PHP教程

Jul 12, 2016 am 08:57 AM
framework helper zend

Zend Framework自定义Helper类相关注意事项总结,zendhelper

本文讲述了Zend Framework自定义Helper类相关注意事项。分享给大家供大家参考,具体如下:

编写自定义的Helper类

编写自定义的Helper类很容易,只要遵循以下几个原则即可:

① 类名必须是 Zend_View_Helper_*,*是helper的名称。例如,你在写一个名为“specialPurpose”的类,类名将至少是"SpecialPurpose",另外你还应该给类名加上前缀,建议将“View_Helper”作为前缀的一部份:“My_View_Helper_SpecialPurpose”。(注意大小写)你将需要将前缀(不包含下划线)传递给addHelperPath() 或 setHelperPath()。
② 类中必须有一个public的方法,该方法名与helper类名相同。这个方法将在你的模板调用"$this->specialPurpose()"时执行。在我们的“specialPurpose”例子中,相应的方法声明可以是 “public function specialPurpose()”。
③ 一般来说,Helper类不应该echo或print或有其它形式的输出。它只需要返回值就可以了。返回的数据应当被转义。
④ 类文件的命名应该是helper方法的名称,比如在"specialPurpose"例子中,文件要存为“SpecialPurpose.php”。

把helper类的文件放在你的helper路径下, Zend_View就会自动加载,实例化,持久化,并执行。

三点类文件名称,类名称,类中helper方法,保持某种程度上的一致。

贴代码:

两个helper,看清楚了,他们的不同啊。。。。。

version   zf 1.10

Bootstrap.php

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap {
  protected function _initDoctype() {
    $this->bootstrap ( 'view' );
    $view = $this->getResource ( 'view' );
    $view->doctype ( 'XHTML1_STRICT' );
  }
  protected function _initView() {
    $view = new Zend_View ();
    $view->setEncoding ( 'UTF-8' );
    $view->doctype ( 'XHTML1_STRICT' );
    $view->addHelperPath('../application/views/helpers', 'My_View_Helper');
    $viewRenderer = new Zend_Controller_Action_Helper_ViewRenderer();
    Zend_Controller_Action_HelperBroker::addHelper($viewRenderer);
    $viewRenderer->setView($view);
    return $view;
  }
}

Nach dem Login kopieren

application/views/helpers

Img.php:

class Zend_View_Helper_Img extends Zend_View_Helper_Abstract
{
  public function img()
  {
    return "this is a img";
  }
}

Nach dem Login kopieren

TestHelper.php:

class My_View_Helper_TestHelper extends Zend_View_Helper_Abstract
{
  public function testHelper()
  {
    return "this is a TestHelper";
  }
}

Nach dem Login kopieren

action中使用:

<&#63;php echo $this->doctype() &#63;>
<&#63;php echo $this->img() &#63;>
<&#63;php echo $this->testHelper() &#63;>

Nach dem Login kopieren

附加内容,在initView中添加addHelperPath,可以改成采用加载application。ini文件配置项的方式把路径进行配置。如下

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap {
 protected function _initDoctype() {
 $this->bootstrap ( 'view' );
 $view = $this->getResource ( 'view' );
 $view->doctype ( 'XHTML1_STRICT' );
 }
 protected function _initView() {
 $view = new Zend_View ();
 $view->setEncoding ( 'UTF-8' );
 $view->doctype ( 'XHTML1_STRICT' );
 $options = $this->getOptions ();
 $viewOptions = $options ['resources']['view']['helperPath'];
 if (is_array ($viewOptions)) {
  foreach($viewOptions as $helperName =>$path)
  {
  $view->addHelperPath ( $path, $helperName );
  }
 }
 $viewRenderer = new Zend_Controller_Action_Helper_ViewRenderer ();
 Zend_Controller_Action_HelperBroker::addHelper ( $viewRenderer );
 $viewRenderer->setView ( $view );
 return $view;
 }
}

Nach dem Login kopieren
[production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
appnamespace = "Application"
resources.view[] =
resources.view.helperPath.My_View_Helper = "../application/views/helpers"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.params.displayExceptions = 1
[staging : production]
[testing : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
[development : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
resources.frontController.params.displayExceptions = 1

Nach dem Login kopieren

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

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

您可能感兴趣的文章:

  • Zend Framework教程之Bootstrap类用法概述
  • Zend Framework教程之资源(Resources)用法实例详解
  • Zend Framework教程之Application和Bootstrap用法详解
  • Zend Framework教程之配置文件application.ini解析
  • Zend Framework教程之Loader以及PluginLoader用法详解
  • Zend Framework教程之Autoloading用法详解
  • Zend Framework教程之Resource Autoloading用法实例
  • Zend Framework教程之MVC框架的Controller用法分析
  • Zend Framework教程之路由功能Zend_Controller_Router详解
  • Zend Framework教程之Zend_Controller_Plugin插件用法详解
  • Zend Framework教程之响应对象的封装Zend_Controller_Response实例详解
  • Zend Framework教程之动作的基类Zend_Controller_Action详解
  • Zend Framework教程之前端控制器Zend_Controller_Front用法详解
  • Zend Framework教程之Application用法实例详解

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1110090.htmlTechArticleZend Framework自定义Helper类相关注意事项总结,zendhelper 本文讲述了Zend Framework自定义Helper类相关注意事项。分享给大家供大家参考,具体如下...
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Microsoft NET Framework-Installationsprobleme beheben Fehlercode 0x800c0006 Microsoft NET Framework-Installationsprobleme beheben Fehlercode 0x800c0006 May 05, 2023 pm 04:01 PM

.NET Framework 4 wird von Entwicklern und Endbenutzern benötigt, um die neuesten Versionen von Anwendungen unter Windows auszuführen. Beim Herunterladen und Installieren von .NET Framework 4 beschwerten sich jedoch viele Benutzer darüber, dass das Installationsprogramm mittendrin anhielt und die folgende Fehlermeldung anzeigte: „.NET Framework 4 wurde nicht installiert, da der Download mit dem Fehlercode 0x800c0006 fehlgeschlagen ist.“ Wenn es auch bei der Installation von .NETFramework4 auf Ihrem Gerät auftritt, sind Sie hier richtig

So identifizieren Sie Windows-Upgrade-Probleme mithilfe von SetupDiag unter Windows 11/10 So identifizieren Sie Windows-Upgrade-Probleme mithilfe von SetupDiag unter Windows 11/10 Apr 17, 2023 am 10:07 AM

Wenn bei Ihrem Windows 11- oder Windows 10-PC ein Upgrade- oder Update-Problem auftritt, wird in der Regel ein Fehlercode angezeigt, der den tatsächlichen Grund für den Fehler angibt. Allerdings kann es manchmal zu Verwirrung kommen, wenn ein Upgrade oder Update fehlschlägt, ohne dass ein Fehlercode angezeigt wird. Mit praktischen Fehlercodes wissen Sie genau, wo das Problem liegt, und können versuchen, es zu beheben. Da jedoch kein Fehlercode angezeigt wird, wird es schwierig, das Problem zu identifizieren und zu beheben. Es wird viel Zeit in Anspruch nehmen, einfach nur die Ursache des Fehlers herauszufinden. In diesem Fall können Sie versuchen, ein spezielles Tool namens SetupDiag von Microsoft zu verwenden, mit dem Sie die wahre Ursache des Fehlers leicht identifizieren können.

SCNotification funktioniert nicht mehr [5 Schritte zur Behebung] SCNotification funktioniert nicht mehr [5 Schritte zur Behebung] May 17, 2023 pm 09:35 PM

Als Windows-Benutzer werden Sie wahrscheinlich jedes Mal, wenn Sie Ihren Computer starten, auf die Fehlermeldung „SCNotification funktioniert nicht mehr“ stoßen. SCNotification.exe ist eine Microsoft-Systembenachrichtigungsdatei, die aufgrund von Berechtigungsfehlern und Netzwerkfehlern jedes Mal abstürzt, wenn Sie Ihren PC starten. Dieser Fehler ist auch unter seinem problematischen Ereignisnamen bekannt. Daher sehen Sie dies möglicherweise nicht als Hinweis darauf, dass SCNotification nicht mehr funktioniert, sondern als Fehler clr20r3. In diesem Artikel werden wir alle Schritte untersuchen, die Sie unternehmen müssen, um das Problem zu beheben, dass SCNotification nicht mehr funktioniert, sodass es Sie nicht mehr stört. Was ist SCNotification.e?

Microsoft .NET Framework 4.5.2, 4.6 und 4.6.1 wird im April 2022 nicht mehr unterstützt Microsoft .NET Framework 4.5.2, 4.6 und 4.6.1 wird im April 2022 nicht mehr unterstützt Apr 17, 2023 pm 02:25 PM

Microsoft Windows-Benutzer, die Microsoft.NET Version 4.5.2, 4.6 oder 4.6.1 installiert haben, müssen eine neuere Version des Microsoft Framework installieren, wenn sie möchten, dass Microsoft das Framework durch zukünftige Produktupdates unterstützt. Laut Microsoft wird der Support für alle drei Frameworks am 26. April 2022 eingestellt. Nach Ablauf des Supportdatums erhält das Produkt keine „Sicherheitsfixes oder technischen Support“. Die meisten Heimgeräte werden durch Windows-Updates auf dem neuesten Stand gehalten. Auf diesen Geräten sind bereits neuere Versionen von Frameworks installiert, beispielsweise .NET Framework 4.8. Geräte, die nicht automatisch aktualisiert werden, können dies tun

KB5012643 für Windows 11 macht .NET Framework 3.5-Apps kaputt KB5012643 für Windows 11 macht .NET Framework 3.5-Apps kaputt May 09, 2023 pm 01:07 PM

Es ist eine Woche her, seit wir über den neuen Fehler im abgesicherten Modus gesprochen haben, der Benutzer betrifft, die KB5012643 für Windows 11 installiert haben. Dieses lästige Problem tauchte nicht auf der Liste der bekannten Probleme auf, die Microsoft am Tag der Veröffentlichung veröffentlichte, und überraschte damit alle. Nun, gerade als Sie dachten, es könnte nicht noch schlimmer werden, lässt Microsoft eine weitere Bombe für Benutzer platzen, die dieses kumulative Update installiert haben. Windows 11 Build 22000.652 verursacht weitere Probleme. Daher warnt das Technologieunternehmen Windows 11-Benutzer, dass beim Starten und Verwenden einiger .NET Framework 3.5-Anwendungen Probleme auftreten könnten. Kommt Ihnen das bekannt vor? Aber bitte wundern Sie sich nicht

PHP-Implementierungs-Framework: Zend Framework-Erste-Schritte-Tutorial PHP-Implementierungs-Framework: Zend Framework-Erste-Schritte-Tutorial Jun 19, 2023 am 08:09 AM

PHP-Implementierungsframework: ZendFramework-Einführungs-Tutorial ZendFramework ist ein von PHP entwickeltes und derzeit von ZendTechnologies verwaltetes Open-Source-Website-Framework, das das MVC-Designmuster übernimmt und eine Reihe wiederverwendbarer Codebibliotheken zur Implementierung von Web2.0-Anwendungen und Web Serve bereitstellt. ZendFramework ist bei PHP-Entwicklern sehr beliebt und geschätzt und bietet eine große Auswahl an

So verwenden Sie ACL (Access Control List) zur Berechtigungskontrolle im Zend Framework So verwenden Sie ACL (Access Control List) zur Berechtigungskontrolle im Zend Framework Jul 29, 2023 am 09:24 AM

So verwenden Sie ACL (AccessControlList) zur Berechtigungskontrolle im Zend Framework. Einführung: In einer Webanwendung ist die Berechtigungskontrolle eine entscheidende Funktion. Es stellt sicher, dass Benutzer nur auf die Seiten und Funktionen zugreifen können, für die sie eine Zugriffsberechtigung haben, und verhindert unbefugten Zugriff. Das Zend-Framework bietet eine praktische Möglichkeit, die Berechtigungskontrolle mithilfe der ACL-Komponente (AccessControlList) zu implementieren. In diesem Artikel wird die Verwendung von ACL im Zend Framework vorgestellt

Wie erstelle ich einen benutzerdefinierten Helfer in CakePHP? Wie erstelle ich einen benutzerdefinierten Helfer in CakePHP? Jun 04, 2023 pm 06:40 PM

CakePHP ist ein beliebtes PHP-Framework, das viele praktische Tools und Funktionen bereitstellt, um die Arbeit von Entwicklern effizienter zu gestalten. Einer davon ist der Hilfsmechanismus, der nützliche Funktionen und Methoden in Ansichtsdateien bereitstellt. In diesem Artikel erfahren Sie, wie Sie einen benutzerdefinierten Helper in CakePHP erstellen. 1. Erstellen Sie die Helper-Klasse. In CakePHP werden Helper im Verzeichnis „app/View/Helper“ gespeichert. Erstellen Sie eine neue Hel

See all articles