如何编写我的脚本来输出数据,我放置这样的内容:{name}

时间:2009-06-01 03:34:30

标签: php templates

我见过很多脚本,你会看到像这样的东西

<meta keyword="{keywords}" ...>

<input type="text" name="name" value="{name}">

这叫什么,我怎么能自己做。

感谢

4 个答案:

答案 0 :(得分:5)

它被称为模板。

您需要模板引擎,或者您可以自己编写一个。 很久以前,有一个名为Smarty的流行模板引擎。今天,模板引擎是大多数框架的一部分。

以下是PHP的一些模板引擎列表: http://www.webresourcesdepot.com/19-promising-php-template-engines/

考虑到你有这样一个问题,你自己的模板引擎更容易出错,所以我建议选择一个免费提供的。

还有一件事。 PHP本身是一种模板引擎,因此您不一定要添加另一级别的模板。使用PHP:

<input type="text" name="name" value="<?=$VALUES['name']?>">

答案 1 :(得分:1)

我可以推荐......

<input type="text" name="name" value="<?= e($name) ?>">

其中e是逃避函数

我发现不需要模板引擎

更多例子......

...的foreach

<ul>
<?php foreach( $items as $item ): ?>
    <li><?= e($item) ?><li>
<?php endforeach; ?>
</ul>

如果....

<input type="checkbox"<?php if( $checkbox ): ?> selected="selected"<?php endif; ?>>

答案 2 :(得分:0)

有一些模板引擎可以支持这种变量语法,例如Blitz模板(http://alexeyrybak.com/blitz/blitz_en.html)会浮现在脑海中。

答案 3 :(得分:0)

我不确定你的意思,但让我猜测一下:

$foo = "Please replace {this} here!";
$bar = str_replace('{this}', 'that', $foo);

当然有很多模板系统可以做到这一点,只有更聪明。所以你可能想看一下。