swaroopsm/tower

一个轻量级的PHP模板助手

0.4 2014-10-11 19:35 UTC

This package is not auto-updated.

Last update: 2024-09-24 02:21:50 UTC


README

Build Status Code Climate Latest Stable Version Total Downloads Latest Unstable Version License

一个轻量级的PHP模板助手。

为什么选择Tower?

如果您希望将视图逻辑与核心代码分离,Tower将是您的选择。Tower显然不是一个完整的模板引擎。尽管如果您正在使用Codeigniter、Laravel等PHP框架,Tower同样不是一个好的解决方案。

Tower最适合小规模Web应用程序,在这种情况下,您可能不需要一个完整的框架。如果您决定使用纯PHP编写Web应用程序,那么请检查Tower。

安装Tower

Tower通过composer提供。将以下行添加到您的composer.json文件中,以便自动将Tower加载到您的应用程序中。

"require": {
  "swaroopsm/tower": "0.3"
}

使用Tower

Tower具有一个非常简单且易于使用的API,由几个方法组成。

实例化Tower

$tower = new Tower();

设置模板文件

告诉Tower应使用哪个文件作为模板。

// filename: template.php
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title></title>
</head>
<body>
  <h2><?= $name ?></h2>
  <p><?= $description ?></p>
</body>
</html>
$tower->setTemplate('template.php');

设置变量

Tower允许您设置可以在模板中使用的变量。

$tower->set('name', 'Tower');
$tower->set('description', 'A simple template helper');

渲染模板

在浏览器上渲染。

$tower->render();

模板布局

Tower还允许您为模板添加布局。如果您需要网页布局,这将非常有用。例如,在模板中使用布局:

$tower->setLayout('layout.php');

您使用$yield在助手中渲染模板内容。有关使用布局的更详细示例,请参阅:布局示例

使用部分

部分允许您在模板中包含其他模板,从而允许您重用模板。请参考以下代码以设置模板的部分。

$tower->partial->set('header', 'header.php');
$tower->partial->set('footer', 'footer.php');

然后在您的模板中使用以下方式渲染这些部分:

<?= $partial['header'] ?>

Some stuffs here...

<?= $partial['footer'] ?>

如果您决定使用不同于$partial的不同变量,请使用以下方法:

$tower->partial->setPrefix('towerPartial');

现在您可以这样做:

<?= $towerPartial['header'] ?>

Some stuffs here...

<?= $towerPartial['footer'] ?>

有关详细示例,请参阅此处。

一些额外功能

Tower还包含一些其他额外的方法。

保存到文件

如果您想动态地将内容保存到文件,这将非常有用。

$tower->save('filename.txt');

示例