0

我一直在查看 Smarty 模板的示例,但找不到我的答案。

目前,我有一个相当简单的 10 页静态 HTML 网站。我正在考虑使用 Smarty 来减少明显的 HTML 重复(页眉、页脚等...)

这可以使用 Smarty 模板吗?还是我最好使用简单的 php 包含?

4

2 回答 2

1

你绝对可以使用 Smarty 模板来做到这一点。但是,如果您只是想包含页眉/页脚/菜单模板并且真的不需要 Smarty 必须提供的其他功能,那么最好避开它。你是在问如何在 Smarty 中做到这一点,或者哪个更好?如果是后者,在您的情况下使用 include 可能会更好。

<?php
$inc = array(
    "title" => "About",
    "active" => "About"
);

include_once("inc/header.php");
?>

<p>Lorem ipsum.</p>

<?php
include_once("inc/footer.php");
?>

在 Smarty 中,你会做这样的事情:

<?php
require_once('Smarty.class.php');
$smarty = new Smarty();

$smarty->display("inc/header.tpl");
$smarty->display("inc/about.tpl");
$smarty->display("inc/footer.tpl");

如果您缺少 Smarty 可能提供的一些功能并且觉得您需要它们,那么最好自己创建一个非常简单的模板系统类。

于 2012-09-10T22:38:50.010 回答
1

无需使用 Smarty。只需使用 PHP。

require_once($_SERVER['DOCUMENT_ROOT'] . '/inc/header.php');

于 2012-09-10T22:39:11.593 回答