0

我正在寻找一个简单的 PHP 模板引擎,它允许在替换中使用 PHP 表达式。模板应该只包含简单的变量替换而没有其他任何东西的“MVC 理想”通常会失败,常见的模板系统通过创建“变量过滤器”的语法(例如 Smarty 中管道之后的东西)来承认和响应,本质上是新的编程语言。

当我想在模板中做一些小的变量后处理时,我想写{strtolower(trim($a))}而不是{$a|strip|lower},只是因为我不想记住所有东西的两种语法(通常是两个名称)。我知道它可能会被滥用,但我完全有能力自己遵守 MVC,我不需要一种语言来强迫我这样做。这(使用本地语言表达式)是完全常见的事情,例如在 Python 模板引擎中。

另一方面,我对“PHP”的答案不感兴趣。即使使用替代语法 ( for:...endfor;) 和<?=. 我想要一个用于变量(表达式)替换的漂亮而简单的语法for,, if, 等。它实际上可能是 PHP 之上的一个非常薄的语法糖层。

是否存在类似于上述描述的内容?

4

2 回答 2

0

如果您希望在模板中使用 php 表达式,则可以使用 php 速记语法。如果您想走这条路,我建议您不要选择为您提供一些语法糖的模板系统,因为您将失去 IDE 提示,例如语法突出显示和 lint

例如,如果你想回显一个变量,你可以这样做:

<h1><?=$name?></h1>
<h2><?=strtolower($name)?></h2>

对于条件:

<?php if(true): ?>
Some markup
<?php endif; ?>

类似的语法也可以用于循环。

快乐黑客!

于 2012-08-14T11:22:42.713 回答
0

这是我写的一个简单的 PHP 模板引擎的链接:http: //hardcoder.nazuka.net/projects/lint/

于 2013-02-25T08:55:42.013 回答