在智能模板中创建数组?

2022-08-30 19:36:19

我需要在smarty模板中从其他一维数组创建一个新数组。那么,在模板文件中创建数组的最佳可能性是什么?

谢谢 萨钦


答案 1

Smarty3允许您和{$var = ['foo' => 'bar', 'sub' => [1, 2, 3]]}{$var.foo = 'other'}

如果这些选项不够,请编写一个插件函数


答案 2

过去,我使用过两种方法 - 一种是邪恶的和一种肮脏的 - 在tpl中快速分配一个数组:

{* Am I evil? *}
{php}
    $array = array("cat", "dog", "rabbit");
    $this->assign("myArray", $array);
{/php}

{* Am I dirty? *}
{assign var='myArray' value=','|explode:"cat,dog,rabbit"}

两者都会导致数组在模板中可用于构建简单的循环。无论如何,我总是以这种方式更改我的代码,所以我根本不需要这些东西。


推荐