Zend Framework render、forward、redirectの違い

Zend Frameworkでのrender、forward、redirectの挙動について

render

指定したテンプレート(phtml)をレンダリング。

PHP

// 同モジュール/同コントローラ/同アクション.phtml $this->render(); // もしくは指定なし // 同モジュール/同コントローラ/foo.phtml $this->render('foo');

forward

指定したアクションを実行。

PHP

// 同モジュール/同コントローラ/foo $this->_forward('foo'); // 同モジュール/bar/foo $this->_forward('foo', 'bar'); // /baz/bar/foo $this->_forward('foo', 'bar', 'baz'); // /baz/bar/foo/a/1/b/2 $params['a'] = '1'; $params['b'] = '2'; $this->_forward('foo', 'bar', 'baz', $params);

redirect

指定URLにリダイレクト。

PHP

// /baz $this->_redirect('/baz'); // /baz/bar $this->_redirect('/baz/bar'); // /baz/bar/foo $this->_redirect('/baz/bar/foo'); // http://example.com/baz/bar/foo $this->_redirect('http://example.com/baz/bar/foo'); // http://example.com/baz/bar/foo?a=1&b=2 $this->_redirect('http://example.com/baz/bar/foo?a=1&b=2');

最新の記事

プロフィール

流されるままにウェブ業界で仕事しています。主にLAPP環境でPHPを書いています。最近はjQueryで遊んでいます。
※動作確認について