たとえば、header.tpl と footer.tpl があり、その間に body.tpl があるとします。
特定のセッションが次のように設定されているかどうかを確認して、body.tpl へのアクセスを制限したいとします。
session_start();
if (isset($_SESSION['limited'])) {
//render body.tpl
} else {
//direct somewhere else
}
session_start(); if (isset()) {
部品が header.tpl にあり、部品がfooter.tpl ファイルにある場合、これ} else {}
は機能しますか?
私の計画は、すべてのページに含まれるヘッダーとフッターでセッション チェックを行うことです。そのため、テンプレートをレンダリングする PHP ファイルでそれを行う必要はありません。
このように(body.tplの内容):
<?php require_once(TEMPLATE_PATH. "/header.tpl"); ?>
//body.tpl contents
<?php require_once(TEMPLATE_PATH. "/footer.tpl"); ?>
body.tpl は PHP ファイルを介して呼び出されrequires
、必要なすべてのファイルが含まれ、tpl ファイルに入力するために使用されるすべてのクラスがインスタンス化されます。PHPファイルでセッションチェックを行うと、意図したとおりに機能します。