Maison  >  Article  >  développement back-end  >  À propos de l'utilisation du contrôleur d'action Zend Framework

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

不言
不言original
2018-06-15 11:29:181243parcourir

Cet article présente principalement l'utilisation du contrôleur d'action Zend Framework et analyse les fonctions, les étapes d'utilisation, les techniques associées et les précautions du contrôleur d'action sous forme d'exemples. Les amis dans le besoin peuvent se référer aux exemples de cet article

Décrit l'utilisation du contrôleur d'action Zend Framework. Partagez-le avec tout le monde pour référence, comme suit :

Introduction aux contrôleurs d'action

Afin d'utiliser la classe Zend_Controller_Action, vous devez la sous-classer dans le contrôleur réel. classe.

Code :

<?php
class FooController extends Zend_Controller_Action{
  public function barAction(){
    //do something
  }
  public function bazAction(){
    //do something
  }
}

Description : La classe FooController ci-dessus définit deux actions, bar et baz.

Initialisation de l'objet

Initialisation Une manière plus appropriée de personnaliser l'instanciation consiste à utiliser la méthode

init() . Cette méthode est la dernière tâche d'appel dans __construct().

Code :

<?php
class FooController extends Zend_Controller_Action{
  public function init(){
    $this->db = Zend_Db::factory(&#39;Pdo_Mysql&#39;,array(
      &#39;host&#39;=>&#39;myhost&#39;,
      &#39;username&#39;=>&#39;user&#39;,
      &#39;password&#39;=>&#39;xxxx&#39;,
      &#39;dbname&#39;=>&#39;website&#39;
    ));
  }
}

Explication : Le code ci-dessus réalise la connexion à la base de données lors de l'initialisation de l'objet.

Accesseur

Le contrôleur d'action peut inclure de nombreux contenus, tels qu'un objet de requête, un objet de réponse, des paramètres d'appel et des paramètres de requête. Ces contenus sont accessibles via les méthodes d'accès correspondantes.

L'objet de requête peut être obtenu via la méthode

getRequest() L'exécution de cette méthode renverra une instance de Zend_Controller_Request_Abstract.

Code :

$module = $this->getRequest()->getModuleName();//获取模块名称
$controller = $this->getRequest()->getControllerName();//获取控制器名称
$action = $this->getRequest()->getActionName();//获取动作名称

L'objet de réponse peut être obtenu via

getResponse() méthode Get, l'exécution de cette méthode renverra une instance de Zend_Controller_Response_Abstract.

Les paramètres de requête de l'objet de requête incluent tous les paramètres GET ou GET ou _POST. Afin de lire ces paramètres, vous pouvez utiliser la méthode

_getParam($key) ou _getAllParams().

Méthode d'intégration de vue

Initialisation de vue

L'exécution de la méthode

initView() initialisera le afficher l'objet.

La méthode Analyser la vue

render() est utilisée pour analyser la vue

Code :

<?php
class MyController extends Zend_Controller_Action{
  public function fooAction(){
    //Renders my/foo.phtml
    $this->render();
    //Renders my/bar.phtml
    $this->render(&#39;bar&#39;);
    //Renders baz.phtml
    $this->render(&#39;baz&#39;,null,true);//第三个参数,指定是否使用控制器目录作为子目录,true表示不使用
    //Renders my/login.phtml to the &#39;form&#39; segment of the response object
    $this->render(&#39;login&#39;,&#39;form&#39;);
  }
}

Autres méthodes

_forword(), cette méthode effectue une autre action_redirect(), cette méthode redirige vers un autre endroit

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

Recommandations associées :

Zend Analyse de l'utilisation de Framework action assistant

Zend Utilisation de l'application et du bootstrap dans le 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:
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