我试图通过以下形式分配SMARTY变量$error
来显示错误消息:
function validate1() {
$error['title'] = "Title contains illegal characters...";
$this->smarty->append('error', $error);
}
function validate2() {
$error['time'] = "Please enter a time in 12 hour clock (12:30 PM) format.";
$this->smarty->append('error', $error);
}
我的HTML看起来像:
<p class="message-error">{$error['title']}</p>
<p class="message-error">{$error['time']}</p>
我最近一直在使用下面的代码,它有效;有什么方法可以修改第一个代码块,使其与下面的代码一样工作?
$error['title'] = "Title contains illegal characters...";
$error['time'] = "Please enter a time in 12 hour clock (12:30 PM) format.";
$this->smarty->assign("error", $error);
答案 0 :(得分:1)
如果以这种方式定义数组并包含合并选项(第3个参数到append()
)
function validate1() {
$error = array('title' => "Title contains illegal characters...");
$this->smarty->append('error', $error, TRUE);
// -------------------------------------^^^^
}
编辑忘记包含合并参数。
答案 1 :(得分:0)
阅读smarty manual,关联数组的正确语法是:
{$error.title}