Maison développement back-end tutoriel php Connaissances connexes sur la classe Helper personnalisée de Zend Framework

Connaissances connexes sur la classe Helper personnalisée de Zend Framework

Jun 15, 2018 pm 05:04 PM
framework zend 注意事项

Cet article présente principalement les précautions liées à la classe Helper personnalisée de Zend Framework, résume et analyse les principes pertinents et les techniques d'implémentation de l'écriture de la classe Helper personnalisée, les amis dans le besoin peuvent s'y référer

Cet article parle de Zend Précautions liées à la classe Helper personnalisée du Framework. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

Écrire une classe Helper personnalisée

Écrire une classe Helper personnalisée est facile, tant que vous suivez les principes suivants : Can :

① Le nom de la classe doit être Zend_View_Helper_*, * est le nom de l'assistant. Par exemple, si vous écrivez une classe nommée "specialPurpose", le nom de la classe sera au moins "SpecialPurpose". De plus, vous devez également préfixer le nom de la classe. Il est recommandé d'utiliser "View_Helper" dans le préfixe : "Mon_View_Helper_SpecialPurpose". (notez le cas) Vous devrez transmettre le préfixe (sans le trait de soulignement) à addHelperPath() ou setHelperPath().
② Il doit y avoir une méthode publique dans la classe et le nom de la méthode est le même que le nom de la classe d'assistance. Cette méthode sera exécutée lorsque votre modèle appelle "$this->specialPurpose()". Dans notre exemple "specialPurpose", la déclaration de méthode correspondante pourrait être "public function specialPurpose()".
③ De manière générale, la classe Helper ne doit pas faire écho, ni imprimer ni avoir d'autres formes de sortie. Il lui suffit de renvoyer une valeur. Les données renvoyées doivent être échappées.
④ Le nom du fichier de classe doit être le nom de la méthode d'assistance. Par exemple, dans l'exemple "specialPurpose", le fichier doit être enregistré sous "SpecialPurpose.php".

Placez le fichier de classe d'assistance dans votre chemin d'assistance et Zend_View se chargera, instanciera, persistera et s'exécutera automatiquement.

Le nom du fichier de classe à trois points, le nom de la classe et la méthode d'assistance dans la classe doivent être cohérents dans une certaine mesure.

Publiez le code :

Deux assistants, voyez bien, leurs différences. . . . .

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;
  }
}
Copier après la connexion

application/views/helpers

Img.php :

class Zend_View_Helper_Img extends Zend_View_Helper_Abstract
{
  public function img()
  {
    return "this is a img";
  }
}
Copier après la connexion

TestHelper.php :

class My_View_Helper_TestHelper extends Zend_View_Helper_Abstract
{
  public function testHelper()
  {
    return "this is a TestHelper";
  }
}
Copier après la connexion

Utilisé en action :

<?php echo $this->doctype() ?>
<?php echo $this->img() ?>
<?php echo $this->testHelper() ?>
Copier après la connexion

contenu supplémentaire, ajoutez addHelperPath dans initView, vous pouvez le modifier pour charger l'application. Configurez le chemin via l'élément de configuration du fichier ini. Comme suit

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap {
 protected function _initDoctype() {
 $this->bootstrap ( &#39;view&#39; );
 $view = $this->getResource ( &#39;view&#39; );
 $view->doctype ( &#39;XHTML1_STRICT&#39; );
 }
 protected function _initView() {
 $view = new Zend_View ();
 $view->setEncoding ( &#39;UTF-8&#39; );
 $view->doctype ( &#39;XHTML1_STRICT&#39; );
 $options = $this->getOptions ();
 $viewOptions = $options [&#39;resources&#39;][&#39;view&#39;][&#39;helperPath&#39;];
 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;
 }
}
Copier après la connexion

[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
Copier après la connexion

Ce qui précède est l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'apprentissage de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

À propos de l'utilisation du contrôleur d'action Zend Framework

À propos de l'analyse de l'utilisation du composant Zend_Registry dans Zend Cadre

Zend Analyse de l'utilisation des classes Bootstrap dans Framework

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Notes de développement C++ : évitez les exceptions de pointeur nul dans le code C++ Notes de développement C++ : évitez les exceptions de pointeur nul dans le code C++ Nov 22, 2023 pm 02:38 PM

Dans le développement C++, l'exception de pointeur nul est une erreur courante, qui se produit souvent lorsque le pointeur n'est pas initialisé ou continue d'être utilisé après sa publication. Les exceptions de pointeur nul provoquent non seulement des plantages du programme, mais peuvent également entraîner des vulnérabilités de sécurité, une attention particulière est donc requise. Cet article explique comment éviter les exceptions de pointeur nul dans le code C++. Initialisation des variables de pointeur Les pointeurs en C++ doivent être initialisés avant utilisation. S'il n'est pas initialisé, le pointeur pointe vers une adresse mémoire aléatoire, ce qui peut provoquer une exception de pointeur nul. Pour initialiser un pointeur, pointez-le sur un

Wuthering WavesIntroduction aux points nécessitant une attention particulière lors des tests Wuthering WavesIntroduction aux points nécessitant une attention particulière lors des tests Mar 13, 2024 pm 08:13 PM

Pendant le test Mingchao, veuillez éviter les mises à niveau du système, les réinitialisations d'usine et le remplacement de pièces pour éviter que la perte d'informations ne provoque une connexion anormale au jeu. Rappel spécial : il n'y a pas de voie d'appel pendant la période de test, veuillez donc la manipuler avec prudence. Introduction aux précautions lors du test Mingchao : Ne pas mettre à niveau le système, restaurer les paramètres d'usine, remplacer les composants de l'équipement, etc. Notes : 1. Veuillez mettre à niveau le système avec soin pendant la période de test pour éviter la perte d'informations. 2. Si le système est mis à jour, cela peut entraîner un problème d'impossibilité de se connecter au jeu. 3. À ce stade, le canal d'appel n'a pas encore été ouvert. Il est conseillé aux joueurs de choisir s'ils souhaitent effectuer une mise à niveau, à leur propre discrétion. 4. Dans le même temps, un compte de jeu ne peut être utilisé qu’avec un seul appareil Android et un seul PC. 5. Il est recommandé d'attendre la fin du test avant de mettre à niveau le système de téléphonie mobile, de restaurer les paramètres d'usine ou de remplacer l'appareil.

Mar 22, 2024 pm 04:10 PM

Avec l'essor des plateformes de vidéos courtes, Douyin est devenu une partie intégrante de la vie quotidienne de nombreuses personnes. Diffuser en direct sur Douyin et interagir avec les fans sont le rêve de nombreux utilisateurs. Alors, comment démarrer une diffusion en direct sur Douyin pour la première fois ? 1. Comment démarrer une diffusion en direct sur Douyin pour la première fois ? 1. Préparation Pour démarrer la diffusion en direct, vous devez d'abord vous assurer que votre compte Douyin a terminé l'authentification par votre nom réel. Vous pouvez trouver le didacticiel d'authentification par nom réel dans « Moi » -> « Paramètres » -> « Compte et sécurité » dans l'application Douyin. Après avoir terminé l'authentification par nom réel, vous pouvez remplir les conditions de diffusion en direct et démarrer la diffusion en direct sur la plateforme Douyin. 2. Demandez une autorisation de diffusion en direct. Après avoir rempli les conditions de diffusion en direct, vous devez demander une autorisation de diffusion en direct. Ouvrez l'application Douyin, cliquez sur "Moi" -> "Creator Center" -> "Direct

Étapes et précautions pour installer pip sans réseau Étapes et précautions pour installer pip sans réseau Jan 18, 2024 am 10:02 AM

Méthodes et précautions pour installer pip dans un environnement hors ligne L'installation de pip devient un défi dans un environnement hors ligne où le réseau n'est pas fluide. Dans cet article, nous présenterons plusieurs méthodes d'installation de pip dans un environnement hors ligne et fournirons des exemples de code spécifiques. Méthode 1 : utilisez le package d'installation hors ligne. Dans un environnement où vous pouvez vous connecter à Internet, utilisez la commande suivante pour télécharger le package d'installation pip à partir de la source officielle : pipdownloadpip Cette commande téléchargera automatiquement pip et ses packages dépendants à partir de la source officielle. source et enregistrez-le dans le répertoire courant. Déplacez le package compressé téléchargé vers un emplacement distant

Étapes et précautions d'utilisation du stockage local pour stocker des données Étapes et précautions d'utilisation du stockage local pour stocker des données Jan 11, 2024 pm 04:51 PM

Étapes et précautions d'utilisation de localStorage pour stocker des données Cet article présente principalement comment utiliser localStorage pour stocker des données et fournit des exemples de code pertinents. LocalStorage est un moyen de stocker des données dans le navigateur qui conserve les données locales sur l'ordinateur de l'utilisateur sans passer par un serveur. Voici les étapes et les éléments à prendre en compte lors de l'utilisation de localStorage pour stocker des données. Étape 1 : Vérifiez si le navigateur prend en charge LocalStorage

Notes de développement Python : évitez les problèmes courants de fuite de mémoire Notes de développement Python : évitez les problèmes courants de fuite de mémoire Nov 22, 2023 pm 01:43 PM

En tant que langage de programmation de haut niveau, Python présente les avantages d’être facile à apprendre, facile à utiliser et très efficace en développement, et devient de plus en plus populaire parmi les développeurs. Cependant, en raison de la manière dont son mécanisme de récupération de place est implémenté, Python est sujet aux fuites de mémoire lorsqu'il traite de grandes quantités de mémoire. Cet article présentera les éléments auxquels vous devez prêter attention lors du développement de Python sous trois aspects : les problèmes courants de fuite de mémoire, les causes des problèmes et les méthodes pour éviter les fuites de mémoire. 1. Problèmes courants de fuite de mémoire : les fuites de mémoire font référence à l'incapacité de libérer l'espace mémoire alloué par le programme pendant le fonctionnement.

Framework d'implémentation PHP : Tutoriel de mise en route de Zend Framework Framework d'implémentation PHP : Tutoriel de mise en route de Zend Framework Jun 19, 2023 am 08:09 AM

Framework d'implémentation PHP : tutoriel d'introduction à ZendFramework ZendFramework est un framework de site Web open source développé par PHP et actuellement maintenu par ZendTechnologies. ZendFramework adopte le modèle de conception MVC et fournit une série de bibliothèques de code réutilisables pour servir l'implémentation d'applications Web2.0 et Web Serve. ZendFramework est très populaire et respecté par les développeurs PHP et propose une large gamme de

Comment utiliser l'ACL (Access Control List) pour le contrôle des autorisations dans Zend Framework Comment utiliser l'ACL (Access Control List) pour le contrôle des autorisations dans Zend Framework Jul 29, 2023 am 09:24 AM

Comment utiliser l'ACL (AccessControlList) pour le contrôle des autorisations dans Zend Framework Introduction : Dans une application Web, le contrôle des autorisations est une fonction cruciale. Il garantit que les utilisateurs ne peuvent accéder qu'aux pages et fonctionnalités auxquelles ils sont autorisés à accéder et empêche tout accès non autorisé. Le framework Zend fournit un moyen pratique d'implémenter le contrôle des autorisations, en utilisant le composant ACL (AccessControlList). Cet article explique comment utiliser l'ACL dans Zend Framework.

See all articles