Codeigniter-4 プロジェクトでテンプレートを使用したいと考えています。
私のコントローラーがこのように見えたら
class Blog extends \CodeIgniter\Controller
{
public function index()
{
$data = [
'todo_list' => ['Clean House', 'Call Mom', 'Run Errands'],
'title' => "My Real Title",
'heading' => "My Real Heading"
];
echo view('blogview', $data);
}
}
以下のように機能するテンプレートシステムを使用したい:
// Create new Plates instance
$templates = League\Plates\Engine::create('/path/to/templates');
// Render a template with the given data
echo $templates->render('profile', ['name' => 'Jonathan']);
私の質問は - その$templates
オブジェクトをインスタンス化するのに最適な場所はどこですか?
悪い習慣だと確信しているすべての方法でそれを繰り返すことができます。.... または ... __contstructor() でそれを行うことができ、$this->templates
そのテンプレートを使用するすべてのコントローラーに対して割り当てることができます。まだまだいい方法がある気がします。
私は Laravel の経験がほとんどなく、この $templates 変数を特に Blade テンプレートを使用するように設定せず、単に View() を呼び出すだけです。できれば、そのようなことを達成したいです。Laravelの経験が豊富な人なら誰でもそれを達成する方法をよりよく理解できるように、laravelにタグを付けましたか?
何を提案しますか?
PS: composer autoload を使用してすべてのファイルをロードしています。