somemo's diary

プログラマ、雑記、プログラミング関係はLinkから、数式はこっちでまとめていることが多い

【cakePHP】elementによるVEIWの共通化

elementについてのメモです。

element

elementとは、タイトルにもあるようにVEIWの共通部分を切り出したものです。これにより、VIEWの部品化がおこなえるようになります。

格納場所

app/views/elementsです。ここに、*.ctpファイルを格納します。ディレクトリを作成して階層化も行えます。(例:controllername/elementname.ctp)

使い方と内部の処理

// elementのインターフェースは以下のとおりです。最後のはよく知らない・・・
function element($name, $params = array(), $loadHelpers = false)

// VIEW内で下記のように実行します
echo $this->element('controllername/elementname', 連想配列);

// element内でVIEWにセットした変数(viewVars)と、渡された連想配列をマージして最終的にrenderに処理を任せます。
$vars = array_merge($this->viewVars, $params);
$element = $this->_render($file, $vars, $loadHelpers);
return $element;

以上