プレップ クラス

  1. プレップクラスとは
  2. プレップクラスの作成
  3. ビューテンプレートからの実行
  4. LPVパラメータ

プレップクラスとは

プレップクラスは、Ziu 独自のLPVワークフローの1つの機能である「ビューテンプレートへの準備処理」を提供します。
URI ルーティングによりマッピングされ、アプリケーションフォルダ名の配下にあるプレップクラスが実行されます。
プレップクラスの役割として2つの機能(モジュール実行/コール実行)があります。

  • ビューテンプレートへの橋渡しとしての処理 (モジュール実行)
    LPVワークフローのモジュール処理によりロジッククラスの処理後、ビューテンプレートがレンダリングされる前に準備処理を行うことができます。
    モジュール実行するメソッドは、ロジッククラスの実行メソッドと同名メソッドになります。
  • ビューテンプレートでの切出しとしての処理 (コール実行)
    レンダリングの計算処理を切出して、プレップクラスにまとめて管理することができます。
    任意にコールしてメソッドを実行します。

プレップクラスの作成

クラス名/ファイル名については、ロジッククラスに連携します。
クラス名は、ロジッククラスに対してサフィックス「_Prep」を付与します。
仮にロジッククラスが「Hello」の場合、プレップクラスは「Hello_Prep」というクラス名となります。

class Hello_Prep
{

    /**
     * モジュール実行するメソッド
     */
    public function index()
    {
        $this->parems['name'] = 'Ziu';
    }

    /**
     * コール実行するメソッド
     */
    public function replace($str)
    {
        return str_replace('Hello', 'Hi,', $str);
    }

}

同じくファイル名が「hello.logic.php」の場合、プレップクラスのファイル名は「hello.prep.php」となります。
ファイル名のサフィックス「.prep.php

ロジッククラスとプレップクラスは、常に同階層に配置します。

hello.logic.php
hello.prep.php

又は

hello/index.logic.php
hello/index.prep.php

など

初期化メソッド

ロジッククラスと同様に初期化メソッド init() を実行します。

ビューテンプレートからの実行

ビューテンプレートでは、プレップクラスは $prep 変数にバインドされます。
以下のようにビューテンプレート上で、プレップクラスのメソッドを実行します。

echo $prep->replace('Hello ' . $params['name']); // Hi, Ziu

LPVパラメータ

プレップクラスからビューテンプレートへデータを渡すことができます。

パラメータの指定方法
public function index()
{
    $this->params['name'] = 'Ziu';
}

LPVパラメータの指定は、主にモジュール実行されるメソッドか又は、初期化メソッドで指定します。