>  기사  >  php教程  >  Zend Framework 액션 컨트롤러 사용 예

Zend Framework 액션 컨트롤러 사용 예

高洛峰
高洛峰원래의
2017-01-06 09:45:561191검색

이 기사의 예에서는 Zend Framework 액션 컨트롤러의 사용법을 설명합니다. 다음과 같이 참조할 수 있도록 모든 사람과 공유하세요.

액션 컨트롤러 소개

Zend_Controller_Action 클래스를 사용하려면 실제 컨트롤러 클래스에서 이를 하위 클래스화해야 합니다.

코드:

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

설명: 위의 FooController 클래스는 bar와 baz라는 두 가지 작업을 정의합니다.

객체 초기화

초기화 인스턴스화를 사용자 정의하는 더 적절한 방법은 init() 메서드를 사용하는 것입니다. 이 메서드는 __construct()의 마지막 호출 작업입니다.

코드:

<?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;
    ));
  }
}

설명: 위 코드는 객체를 초기화하면서 데이터베이스에 대한 연결을 구현합니다.

접속자

액션 컨트롤러에는 요청 개체, 응답 개체, 호출 매개변수, 요청 매개변수 등 많은 콘텐츠가 포함될 수 있습니다. 이러한 콘텐츠는 해당 접근자 메서드를 통해 액세스할 수 있습니다.

요청 객체는 getRequest() 메서드를 통해 얻을 수 있습니다. 이 메서드를 실행하면 Zend_Controller_Request_Abstract 인스턴스가 반환됩니다.

코드:

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

응답 개체는 getResponse() 메서드를 통해 얻을 수 있습니다. 이 메서드를 실행하면 Zend_Controller_Response_Abstract 인스턴스가 반환됩니다. .

요청 개체의 요청 매개변수에는 GET, GET 또는 _POST 매개변수가 포함됩니다. 이러한 매개변수를 읽으려면 _getParam($key) 또는 _getAllParams() 메소드를 사용할 수 있습니다.

뷰 통합 메소드

뷰 초기화

initView() 메소드를 실행하면 뷰 객체가 초기화됩니다.

파싱 뷰

render() 메소드를 사용하여 뷰를 파싱합니다

코드:

<?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;);
  }
}

다른 방법

_forword(), 이 방법은 다른 작업을 수행합니다
_redirect(), 이 방법은 다른 장소로 리디렉션됩니다

이 기사가 Zend Framework PHP 프로그래밍이 도움이 됩니다.

Zend Framework 액션 컨트롤러 사용 예와 관련된 더 많은 기사를 보려면 PHP 중국어 웹사이트를 주목하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.