在智能模板中创建数组?
我需要在smarty模板中从其他一维数组创建一个新数组。那么,在模板文件中创建数组的最佳可能性是什么?
谢谢 萨钦
我需要在smarty模板中从其他一维数组创建一个新数组。那么,在模板文件中创建数组的最佳可能性是什么?
谢谢 萨钦
Smarty3允许您和{$var = ['foo' => 'bar', 'sub' => [1, 2, 3]]}
{$var.foo = 'other'}
如果这些选项不够,请编写一个插件函数。
过去,我使用过两种方法 - 一种是邪恶的和一种肮脏的 - 在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"}
两者都会导致数组在模板中可用于构建简单的循环。无论如何,我总是以这种方式更改我的代码,所以我根本不需要这些东西。