Smarty:如何显示“{”和“}”特殊字符

时间:2013-09-30 11:57:36

标签: smarty special-characters

我想说我有一个聪明的变量 来自DATABASE ,名为

$myvar = "i am very happy {-: "

如果我试图显示它,它给了我“500内部错误”,因为该字符串包含smarty使用的“{”字符。因为它来自数据库,我对它给我的值没有任何控制...如果字符串包含那些字符,我会注意到它给了我错误。

如何正确显示空间特征而不会导致此错误? 希望有人可以帮忙!

3 个答案:

答案 0 :(得分:2)

尝试在{literal} {/literal}代码之间输出数据。请参阅{literal} Smarty文档。

答案 1 :(得分:0)

您可以尝试str_replace() $myvar这些字符的html等价物,然后再将其分配给smarty:

$myvar = "i am very happy {-: "
$myvar = str_replace(array('{','}'), array('{', '}'), $myvar);
$smarty->assign("myvar", $myvar);

答案 2 :(得分:0)

字面意思不是一个好用的方式

{ldelim} for {
{rdelim} for }
如果你想使用它们,

是个不错的选择。

例如,如果你想发送如下的json

send('[{'ID':1},{'Answer':'A'}]');

代码在tpl文件中将是这样的:

send('[{ldelim}'ID':{$smarty.session.user_id}{rdelim},{ldelim}'Answer':'A'{rdelim}]');