您可以使用 PHP 作为模板引擎。无需构造。{{newsletter}}
假设您在模板文件中输出了一个变量。$newsletter
// templates/contact.php
<?= htmlspecialchars($newsletter, ENT_QUOTES); ?>
要替换变量,请执行以下操作:
$newsletter = 'Your content to replace';
ob_start();
include('templates/contact.php');
$contactStr = ob_get_clean();
echo $contactStr;
// $newsletter should be replaces by `Your content to replace`
通过这种方式,您可以构建自己的模板引擎。
class Template
{
protected $_file;
protected $_data = array();
public function __construct($file = null)
{
$this->_file = $file;
}
public function set($key, $value)
{
$this->_data[$key] = $value;
return $this;
}
public function render()
{
extract($this->_data);
ob_start();
include($this->_file);
return ob_get_clean();
}
}
// use it
$template = new Template('templates/contact.php');
$template->set('newsletter', 'Your content to replace');
echo $template->render();
最好的事情是:您可以立即在模板中使用条件语句和循环(完整的PHP)。
使用此选项可提高可读性:https://www.php.net/manual/en/control-structures.alternative-syntax.php