一切都取決於你的結構和你的需求。
你可以做到這一點,例如這樣:
在PHP
<?php
$currentUrl = $_SERVER['REQUEST_URI'];
if($currentUrl == 'signup.php') { // notice that there are 2 = signs not one to compare
$t->assign('rendered_page', $t->fetch('signup.tpl'));
else {
$t->assign('rendered_page', $t->fetch('login.tpl'));
}
$t->display('index.tpl');
在index.tpl裏
{$rendered_page}
但你也可以這樣來做(簡單顯示模板不會先取得):
在PHP
<?php
$currentUrl = $_SERVER['REQUEST_URI'];
if($currentUrl == 'signup.php') { // notice that there are 2 = signs not one to compare
$t->display('signup.tpl');
else {
$t->display('login.tpl');
}
最後的選擇是把這個直接在Smarty的模板,所以你可以這樣說:
在PHP
<?php
$currentUrl = $_SERVER['REQUEST_URI'];
$t->assign('currentUrl', $currentUrl);
$t->display('index.tpl');
在指數
.tpl
{if $currentUrl eq 'signup.php'}
{include 'signup.tpl'}
{else}
{include 'login.tpl'}
{/if}
'{else}'?替換爲'} else {'我假設? –